opening settings crashes game - thread 'main' panicked at 'called Option::unwrap() on a None value', abstreet/ezgui/src/widgets/dropdown.rs:27:27

May be related to fact that I added a new map
https://gist.github.com/matkoniecz/a45aab4ce4ca8fa4930e1e2eb7a5648e

Your monitor's scale factor was one I hadn't seen before, so there was a dropdown menu that broke.
Also, I just broke the serialized map format, so you'll have to re-import again. The error message if you don't should hopefully be clear. Sorry for the hassle, I'll try to limit to one breaking format change a day. :)  (I'm trying to compress the representation more, so it's easier to fit more cities by default in the release)

Re-import will not be a trouble, as for ABstreets my next step is anyway mapping. I want to fix broken/missing OSM data that I found while I was testing it :)

Awesome! That's one use of it that I was really hoping would catch on.


mousePressed question

Trying to get these arrows to fire more than one at a time with mousePressed. Want them to come from the left of the screen in random order every time you click the mouse. Figured it out with just refreshing the page, but what it to happen with mousePressed.
[example of arrows coming from left of screen] - (https://github.com/StuffnThingz/120-work/blob/master/practice folder/sketch.js)
[what i have so far with mousePressed] - (https://github.com/StuffnThingz/120-work/blob/master/hw-11/sketch.js)

@StuffnThingz, Hey Tobin I saw this earlier was hoping someone would answer by now. I ran the second one and I think it is a great idea and it works well. I am not sure of a solution because when mouse pressed you are creating a new arrow every time as opposed to creating like 20 of whatever object. To get it to fire continuously use the mouseReleased function. I don't have a solution I just wanted to tell you that to take that code and create that firing function was really creative. That and I did not want you to feel like no one was paying attention. I hope you had a good holiday. Cheers!!!!


Track exception - lavaplayer.tools.FriendlyException: Please sign in [ERROR]

Last few weeks been having problems getting Ukulele to play.  Using jocull jda-5 docker image
docker image: ghcr.io/jocull/ukulele:jda-5
CC: @jocull
  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.3.5.RELEASE)

2024-10-21 17:56:40.557  INFO 1 --- [           main] d.arbjerg.ukulele.UkuleleApplicationKt   : Starting UkuleleApplicationKt on 5fc6d1215ec3 with PID 1 (/opt/ukulele/ukulele.jar started by ukulele in /opt/ukulele)
2024-10-21 17:56:40.562  INFO 1 --- [           main] d.arbjerg.ukulele.UkuleleApplicationKt   : No active profile set, falling back to default profiles: default
2024-10-21 17:56:42.372  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
2024-10-21 17:56:42.747  INFO 1 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 368ms. Found 1 R2DBC repository interfaces.
2024-10-21 17:56:45.379  INFO 1 --- [           main] dev.arbjerg.ukulele.jda.CommandManager   : Registered 14 commands with 23 names
2024-10-21 17:56:45.517  INFO 1 --- [           main] o.f.c.internal.license.VersionPrinter    : Flyway Community Edition 6.4.4 by Redgate
2024-10-21 17:56:45.867  INFO 1 --- [           main] o.f.c.internal.database.DatabaseFactory  : Database: jdbc:h2:./db/database (H2 1.4)
2024-10-21 17:56:45.994  INFO 1 --- [           main] o.f.core.internal.command.DbValidate     : Successfully validated 2 migrations (execution time 00:00.058s)
2024-10-21 17:56:46.036  INFO 1 --- [           main] o.f.core.internal.command.DbMigrate      : Current version of schema "PUBLIC": 2
2024-10-21 17:56:46.048  INFO 1 --- [           main] o.f.core.internal.command.DbMigrate      : Schema "PUBLIC" is up to date. No migration necessary.
2024-10-21 17:56:46.492  WARN 1 --- [           main] net.dv8tion.jda.api.JDA                  : Automatically disabled CacheFlags due to missing intents
2024-10-21 17:56:46.494  WARN 1 --- [           main] net.dv8tion.jda.api.JDA                  : Disabled CacheFlag.STICKER (missing GatewayIntent.GUILD_EMOJIS_AND_STICKERS)
2024-10-21 17:56:46.495  WARN 1 --- [           main] net.dv8tion.jda.api.JDA                  : Disabled CacheFlag.ONLINE_STATUS (missing GatewayIntent.GUILD_PRESENCES)
2024-10-21 17:56:46.495  WARN 1 --- [           main] net.dv8tion.jda.api.JDA                  : Disabled CacheFlag.SCHEDULED_EVENTS (missing GatewayIntent.SCHEDULED_EVENTS)
2024-10-21 17:56:46.497  WARN 1 --- [           main] net.dv8tion.jda.api.JDA                  : You can manually disable these flags to remove this warning by using disableCache(CacheFlag.STICKER, CacheFlag.ONLINE_STATUS, CacheFlag.SCHEDULED_EVENTS) on your DefaultShardManagerBuilder
2024-10-21 17:56:47.349  INFO 1 --- [           main] n.dv8tion.jda.api.sharding.ShardManager  : Login Successful!
2024-10-21 17:56:47.498  INFO 1 --- [           main] dev.arbjerg.ukulele.jda.EventHandler     : JDA.ShardInfo(currentShard=[0 / 1], totalShards=1): INITIALIZING -> INITIALIZED
2024-10-21 17:56:47.499  INFO 1 --- [           main] dev.arbjerg.ukulele.jda.EventHandler     : JDA.ShardInfo(currentShard=[0 / 1], totalShards=1): INITIALIZED -> LOGGING_IN
2024-10-21 17:56:47.550  INFO 1 --- [roller-Worker-0] dev.arbjerg.ukulele.jda.EventHandler     : JDA.ShardInfo(currentShard=[0 / 1], totalShards=1): LOGGING_IN -> CONNECTING_TO_WEBSOCKET
2024-10-21 17:56:47.697  INFO 1 --- [           main] d.arbjerg.ukulele.UkuleleApplicationKt   : Started UkuleleApplicationKt in 8.367 seconds (JVM running for 9.395)
2024-10-21 17:56:47.745  INFO 1 --- [inWS-ReadThread] dev.arbjerg.ukulele.jda.EventHandler     : JDA.ShardInfo(currentShard=[0 / 1], totalShards=1): CONNECTING_TO_WEBSOCKET -> IDENTIFYING_SESSION
2024-10-21 17:56:47.745  INFO 1 --- [inWS-ReadThread] n.d.j.internal.requests.WebSocketClient  : Connected to WebSocket
2024-10-21 17:56:47.764  INFO 1 --- [inWS-ReadThread] dev.arbjerg.ukulele.jda.EventHandler     : JDA.ShardInfo(currentShard=[0 / 1], totalShards=1): IDENTIFYING_SESSION -> AWAITING_LOGIN_CONFIRMATION
2024-10-21 17:56:47.957  INFO 1 --- [inWS-ReadThread] dev.arbjerg.ukulele.jda.EventHandler     : JDA.ShardInfo(currentShard=[0 / 1], totalShards=1): AWAITING_LOGIN_CONFIRMATION -> LOADING_SUBSYSTEMS
2024-10-21 17:56:48.190  INFO 1 --- [inWS-ReadThread] net.dv8tion.jda.api.JDA                  : Finished Loading!
2024-10-21 17:56:48.192  INFO 1 --- [inWS-ReadThread] dev.arbjerg.ukulele.jda.EventHandler     : JDA.ShardInfo(currentShard=[0 / 1], totalShards=1): LOADING_SUBSYSTEMS -> CONNECTED

2024-10-21 17:57:40.227  INFO 1 --- [atcher-worker-1] dev.arbjerg.ukulele.jda.CommandManager   : Invocation: ;play dnd ambient music
2024-10-21 17:57:42.334  INFO 1 --- [back-1-thread-1] d.l.y.http.YoutubeAccessTokenTracker     : Updating YouTube visitor id succeeded, new one is CgtDdjJUdldjUlZGbyiWrNq4BjIKCgJVUxIEGgAgODoMCAEgm5OGouPCpYtn, next update will be after 600 seconds.
2024-10-21 17:57:42.484  WARN 1 --- [back-1-thread-1] c.s.d.l.t.p.LocalAudioTrackExecutor      : Suspicious exception for playback of sHA_4wfQhE8

com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Please sign in
        at dev.lavalink.youtube.track.YoutubeAudioTrack.process(YoutubeAudioTrack.java:102) ~[common-1.8.3.jar!/:na]
        at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.execute(LocalAudioTrackExecutor.java:109) ~[lavaplayer-2.2.2.jar!/:na]
        at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$executeTrack$2(DefaultAudioPlayerManager.java:339) ~[lavaplayer-2.2.2.jar!/:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]
        at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]

2024-10-21 17:57:42.485 ERROR 1 --- [back-1-thread-1] dev.arbjerg.ukulele.audio.Player         : Track exception

com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Please sign in
        at dev.lavalink.youtube.track.YoutubeAudioTrack.process(YoutubeAudioTrack.java:102) ~[common-1.8.3.jar!/:na]
        at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.execute(LocalAudioTrackExecutor.java:109) ~[lavaplayer-2.2.2.jar!/:na]
        at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$executeTrack$2(DefaultAudioPlayerManager.java:339) ~[lavaplayer-2.2.2.jar!/:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]
        at java.base/java.lang.Thread.run(Unknown Source) ~[na:an]

Followed the issue to lavaplayer's issue tracker:
https://github.com/lavalink-devs/lavaplayer/issues/156
Which had said to report that issue on the correct repository:
https://github.com/lavalink-devs/youtube-source
After reviewing the issues there, I found numerous tickets all reporting the same issue, all marked as duplicate, and the latest issue 68 indicates it is a duplicate of 64:
https://github.com/lavalink-devs/youtube-source/issues/64
Which ironically does not mention a solution (closed as "not planned"), but does have an indirect unrelated comment referencing issue 61 which I just happened to follow and does mention the official solution:
https://github.com/lavalink-devs/youtube-source/issues/61
In 61, devoxin summaries the official solution with:
Official Solution:
"Use OAuth"

Not sure how difficult that would be to enable, or implement?
The youtube-source page has some instructions:
https://github.com/lavalink-devs/youtube-source/
To enable OAth, it says to just add, which seems simple enough.
YoutubeAudioSourceManager source = new YoutubeAudioSourceManager();
// This will trigger an OAuth flow, where you will be instructed to head to YouTube's OAuth page and input a code.
// This is safe, as it only uses YouTube's official OAuth flow. No tokens are seen or stored by us.
source.useOauth2(null, false);

I am just not sure where exactly this would need to be added?
@jocull is this something you are familiar enough with you could add to your awesome branch?

I've been watching activity upstream a bit just to see where this goes. A lot has changed, and keeps changing. Here are a few breadcrumbs in addition to those listed above. yt-dlp has a lot of mindshare and far more users, so I trust their take on the situation the most.

https://github.com/lavalink-devs/youtube-source/issues/75
https://github.com/yt-dlp/yt-dlp/issues/10128
https://github.com/yt-dlp/yt-dlp/issues/11503

Based on what I've seen so far, and please correct me if wrong, is that:

Using OAuth is (or was?) an option

However the risk of getting accounts banned using it is super high
Making so called "burner" accounts is not trivial to do, due to phone number verification
Some of the chatter indicates it's going away in YT's API entirely 🤷

Some people have luck with IPv6 hacks, IP rotation, etc. But this is very much hit and miss.
Some newer chatter indicates you can use "cookies"? I haven't taken the time to understand this, or what it would take to port it to be lavalink compatible

So all of that to say, solutions aren't clear and most likely we will spend time spinning our wheels only to end up with solutions that are swiftly broken again.
As a token of ❤ for you all, in the meantime I can encourage some coping with Discord's Watch Together feature
I've been using it for now, and while it includes ads and quite a number of unavailable videos, it helps ease the pain while you commiserate with friends over inferior quality lyrics videos of your favorites made unrestricted by re-upload 😜

Thanks for the response @jocull .  YouTube sadness.
I just tested out the "Discord's Watch Together".  It sort of works.  Super ad heavy, which is disappointing, considering I pay for the YouTube subscription.  But in a pinch it works better than nothing.
Thanks.


Setting another default folder for dynamic updates

Using /var/lib/bind instead of /etc/bind to better comply with AppArmor

@cjeanneret do you see any downside to this?

Hello,
Sorry for the delay — can you please rebase against the latest master? It should work "as is" after that.
Cheers,
C.


[stable/prometheus-nats-exporter]: scrapeTimeout option for kubelet

What this PR does / why we need it:
Adds scrapeTimeout option to kubelet servicemonitor, as it may need "special tunning" because it has a lot of metrics.
Which issue this PR fixes
Special notes for your reviewer:
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/chart])

you can ignore, it was a problem on my side, sorry for the noise.


decoder: pure CR not recognized as end of line

The EventSource specification also allows pure CR (without LF) as end-of-line but the current implementation doesn't recognize this.

Thanks for reporting the issue. I was aware, and too lazy to fix it.
You motivated me to tackle it, see commit 7514843b516c1c0f88ce166694ea9ff005098266.
I kept your optimisations, the ones that were still needed.
There was another bug, since I was using bufio.ReadSlice instead of bufio.ReadBytes, when reading lines, if the buffer was full, the error wasn't handled and the reader was not fully read. This affected the benchmarks only.
I will close that bug.

My refactoring is in decoder, using bufio.Scanner. Benchmarks looks good so far, but I still have a failing test case. I will probably push it this evening.

I will avoid touching decoder then.


Upgrade to 7.10.0 ES

Since this is unmerged, I took the liberty and bumped it to 7.10.2. Per release notes for 7.10.2 there's an information disclosure flaw and using 7.10.x is not recommended, 7.10.2 seems to be the final of 7.10


SASS support for Chota

Based on ticket #5 I've created SCSS support for Chota.

Hey @palmiak,
There is a reason why I chose not to opt for any preprocessor when making Chota. I don't think this framework requires something like SASS which is built merely for easing the development of a much larger CSS (eg. Bulma, Bootstrap). Considering the size of this framework, I really don't see a need for SASS.

Hi @jenil
If you you use SASS (or LESS) every day you get used to mixins, nesting or inheritance. I did the integration way it doesn't change much, it mostly uses base files, so it's easy to mantain.
Of course I understand that you want to keep it pure :)

I get it, but most of these features (mixins, nesting or inheritance) are only for a bigger framework. Plus I see all you've done is mostly just imported the CSS as-is.
I don't feel the need to merge this right now, although I would encourage you to keep a SASS version on your fork for anyone who wants to use it.

@jenil no problem - I'll keep it. Also I'll try to mantain it.
Could you add the sass fork url to your readme? I think it would be easier to find for people.

sure, add in https://github.com/jenil/chota/commit/a98e85d7a2e318cacd19af65342c2a276f5807c0


fix: update Django to latest secure version (5.1.4)

Update Django from 5.1 to 5.1.4
Enhance test suite with Django configuration checks
Add database connection verification
Ensure all core Django functionalities work properly

Fixes #3

Thanks a lot for your feedback and suggestions!
I've implemented the changes you recommended:
-Removed the try-except block from the test code in tests.py.
-Updated the lint.yml file to trigger on both push and pull_request events.
I've also run all tests locally, and everything should now pass successfully. Let me know if there's anything else you'd like me to address.


Is this useful for rgb correction in photos?

I'm new to color blending. If I have a pixel in the photo that represents true red, green and then blue, based on how much each of these is off can I use this library to correct the pixels in the rest of the image?
For example if red in the photo appears as 240,13,85 when it should be 255,0,0 I'd like to apply the correction to the rest of the pixels. Same for the green pixel and blue.

No, that's generally not what blend modes are for. The process you're describing is called "color balance" or "white balance", so you may want to search the web for that. :)


Update zio-test, zio-test-sbt to 2.1.13

About this PR
📦 Updates

dev.zio:zio-test
dev.zio:zio-test-sbt

from 2.1.11 to 2.1.13
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "dev.zio" }
}]

labels: test-library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #401.


Does not output on older Chrome for iPhone

Chrome version 47.0.2526.107

Adding this too #2 Thanks for reporting


[Feature] 生arex-storage支持生产环境不需要部署依赖redis

Is there an existing issue for this?

[X] I had searched in the issues and found no similar issues.

Description
生产环境只需要录制数据，希望arex-storage支持生产环境不需要部署依赖redis
Solution
No response
Related issues
No response
Are you willing to submit a pull request to implement this on your own?

[ ] Yes I am willing to submit a pull request on my own!

希望arex-storage支持生产环境不需要部署依赖redis


TypeError: Cannot read properties of undefined (reading 'collapseValue')

When running the deployment project (uixdev --init test --template deployment) with the<EMAIL_ADDRESS>the following exception is thrown:
TypeError: Cannot read properties of undefined (reading 'collapseValue')
    at readDXConfigData (https://dev.cdn.unyt.org/uix1/src/app/dx-config-parser.ts:11:67)
    at eventLoopTick (ext:core/01_core.js:175:7)
    at async getDXConfigData (https://dev.cdn.unyt.org/uix1/src/app/dx-config-parser.ts:50:85)
    at async runBackends (https://dev.cdn.unyt.org/uix1/run.ts:173:75)
    at async https://dev.cdn.unyt.org/uix1/run.ts:159:1

This does not happen in the<EMAIL_ADDRESS>version. Any idea why Datex is not loaded yet @benStre?

I could not reproduce this using the dev cdn and deno for UIX. Has this already been fixed?

was because of old runner


Add RNA monomers to canvas (by click)

Background
This task covers adding sugars, bases and  phosphates separately to canvas and full RNA monomers (combination of Sugar-Base-Phosphate)
Requirements
User should be able to add to canvas:

Sugar monomers (separately)
Base monomers (separately)
Phosphate monomers (separately)
Combinations: Sugar-Base, Base-Phosphate
Full RNA monomers (combination of Sugar-Base-Phosphate)

User adds monomers to canvas in the following way:

User clicks on a monomer/RNA in the RNA library
Selected monomer/RNA becomes highlighted
When a user clicks at the canvas selected monomer/RNA is added to the place of a click
When a selected monomer is added to the canvas, the monomer remains selected in the library and can be added again

Sugar monomers are added to the canvas in a form of a square with rounded edges
Base monomers are added to the canvas in a form of a rhombus
Phosphate monomers are added to the canvas in a form of a circle
Monomers are added to the canvas in a color that corresponds to the color in the library

Tested

Autotests written


Update to Lua 5.3 and pollnet v0.5.1

Hi @abbihors
Thank you for this client. I made some adjustments to get it to work in newer versions, also I documented which versions I used. Maybe you find this useful as well.
Kind Regards
prndev

I'm obviously not the maintainer on this, but I've worked with it (probably) most recently. I appreciate this a ton, but I think we should try moving away from pollnet for async communication. There's a few libraries that could be used, including some native Lua libs that would also negate the requirement for LuaJIT which is a big issue when this is used for modding, as opposed to making stuff from scratch.

Hi @sadkris
That sounds like a good idea. Though my opinion on this is not worth much since my knowledge about the Lua landscape is very limited. I use buttplug-lua (and Lua for that matter) only in the context of https://github.com/prndev/ultrastardeluxe-buttplug. I am unaware how LuaJIT differs from whatever Lua implementation UltraStar Deluxe is using. Given that UltraStar Deluxe is geared towards Lua 5.1 (released in 2006!), I am surprised that it works at all. 😅


Add custom backing storage to ByteBuffer

ByteBuffer's API is great for common in-memory binary data storage and for parsing/serializing data.
One of the problem that I find in every single project I have is the poor performance of ByteBuffer's backing storage which Swift is retaining/releasing every single API call. I'd love to have a data type such as UnsafeByteBuffer and UnsafeMutableByteBuffer which is the same API wrapped around a manually allocated/deallocated buffer.
I'm very sure that this would open up many opportunities for optimizing current applications such as Database drivers, JSON libraries and templating libraries. Even if those oppurtunities are there now, it'd still be a great improvement in the ease of doing said operations.
Databases
Many databases will, for example, return a contiguous buffer with many separate entities. For each entity, an encoder will need to be created which decodes the info of a single entity's row/document into a struct/class. I
struct DatabasePacket {
    let buffer: ByteBuffer

    var rows: Int {
        // computed property to return the amount of rows read from the buffer as indicated by a packet header
    }
}

let packet: DatabasePacket = ...
var dataModels = [DataModel]() // Of course you'd reserve capacity etc...

for _ in 0..<packet.rows {
    // A
    let rowLength = packet.buffer.readInteger(as: Int32.self)
    let unsafeByteBuffer = packet.readUnsafeByteBuffer(length: Int(rowLength))

    let model = try DatabaseRowDecoder().decode(DataModel.self, from: unsafeByteBuffer)
    dataModels.append(model)
}

UnsafeByteBuffer Pseudo Implementation
I'd directly refer to the pointer and provide an API for reading the data from that. Like ByteBuffer but without wrapping a class for auto-deallocation. It also wouldn't allow mutations and therefore mutation.
struct UnsafeByteBuffer {
    private let pointer: UnsafeRawPointer
    private var readerIndex: Int
    private let totalBytes: Int
}

UnsafeMutableByteBuffer Pseudo Implementation
I'd directly refer to the pointer again to provide an API for reading the data from that. Again without wrapping a class for auto-deallocation. But it would allow mutations, but would fatalError or at least do an assertionFailure if you try to access data outside of bounds.
struct UnsafeMutableByteBuffer {
    private let pointer: UnsafeMutableRawPointer
    public private(set) var readerIndex: Int
    public private(set) var writerIndex: Int
    private let totalBytes: Int
    private var isDeallocated = false

    mutating func deallocate() {
        if isDeallocated { return }
        isDeallocated = true
        pointer.deallocate()
    }
}

The goal of this type is not to read data efficiently, but to modify current buffers manually and/or to provide a useful interface. It might support auto-expansion using mutating methods. But allocation/deallocation is 100% within the developer's control.

Thanks for this suggestion!
I am extremely disinclined to add an unsafe data type so prominently to NIO’s API. Specifically, I think that we should view any instance where Swift is not able to obtain an optimisation result as good as the unsafe equivalent as a Swift bug that should be reported upstream.
In your sample code the reference counting overhead should be pretty low; one atomic add per field, which ought not to be a drastic amount. I’d be interested in knowing how many more retains and releases you are seeing, as if that number is drastically higher this might be a good candidate for a benchmark.

https://github.com/Joannis/WIPTemplatingLib
This codebase has an implementation of what I proposed. My current test runs 10_000 iterations. Each set of 10k iterations runs in ~20ms:
[0.023683, 0.020158, 0.019228, 0.018847, 0.017709, 0.018982, 0.019211, 0.019213, 0.018431, 0.017715]
Before this the amount of time spend was 2.5-4x higher (50-80ms) no matter what I tried. All of that is retains/releases.

The fastest I could get it with SwiftNIO ByteBuffer: https://github.com/Joannis/WIPTemplatingLib/tree/slow
[0.061794, 0.059064, 0.055886, 0.056984, 0.059281, 0.055018, 0.052921, 0.053596, 0.052907, 0.055347]

So in my sample I halved your runtime by applying 5 @inlinable annotations to NIO (and in practice I think you only needed 3), as shown in #1220. I'm going to keep checking but I think this elides basically all the retain/release operations in your code, which suggests that moving to unsafe code is not necessary here.

See also: https://bugs.swift.org/browse/SR-11706.

There's one more retain/release happening in your withSlice function with the optimisations applied. I haven't nailed down exactly what's being retained here: it doesn't seem to be the ByteBuffer backing storage, so I suspect the issue is going to be related to the closure context. Regardless, retain/release has become only 4% of your runtime in this benchmark, and I believe there isn't any further win in ByteBuffer in your current benchmark, so I'm going to close this issue for now.


[stable/drone] Drone 2.0.0 rc 8 - map server.alwaysAuth to environment DRONE_GIT_ALWAYS_AUTH

Signed-off-by: lishuangtai<EMAIL_ADDRESS>
What this PR does / why we need it:
When toggled server.alwaysAuth, the environment key should be DRONE_GIT_ALWAYS_AUTH instead of DRONE_ALWAYS_AUTH
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #12963

Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/lgtm

/lgtm


Allow route redirect

Fixes #28

Well, that turned out to be pretty simple didn't it?

Yeah, wasn't too difficult.

@Alxandr  I'm going to merge this but I have to amend your commit message myself. Try to follow the commit guidelines for the future. It takes a bit of getting use to, but it's not that difficult. By doing that we can automatically generate our changelog and release notes very easily and track the things that the community wants/needs to know about.

Merged in.


silent output with the added Feature Description and feature path for the context and fail troubleshooting

Feature Request
Feature description :
We would greatly benefit from a slightly more ROBUST output than what the -S parameter allows for, an output like :
. Converting terraform plan file. 		Failure: tcp/22 port is defined within <IP_ADDRESS>/0 network in aws_security_group_rule.ssh_yolo. 		Failure: tcp/3389 port is defined within <IP_ADDRESS>/0 network in aws_security_group_rule.RDP_YOLO. 		Failure: aws_instance.missing_rootblock (aws_instance) does not have root_block_device property. 		Failure: Resource aws_instance.nonencrypted_Root_ebs_too does not have its encrypted property enabled (its encrypted=[]). 		Failure: Resource aws_instance.missing_rootblock does not have its encrypted property enabled (its encrypted=[]). 		Failure: Resource aws_instance.nonencrypted_Root_ebs_too does not have its encrypted property enabled (its encrypted=[]). 2 features (0 passed, 2 failed) 5 scenarios (0 passed, 5 failed) 7 steps (2 passed, 5 failed)
and the full output:
`
Feature: Ensure ingress security group rules do not contain unfiltered access on vulnerable ports  # /Users/mdesmarest/repos/terraform-compliance-features/features/security_group_rule_ingress_all_0s.feature
Background: Check for presence of security_group_rule(s) and type = ingress
    Given I have aws_security_group_rule defined
    When its type is ingress

Scenario: Check tcp port 22 (ssh) for unfiltered ingress access
    Given I have aws_security_group_rule defined
    When its type is ingress
	Failure: tcp/22 port is defined within <IP_ADDRESS>/0 network in aws_security_group_rule.ssh_yolo.
    Then it must not have tcp protocol and port 22 for <IP_ADDRESS>/0
      Failure:

Scenario: Check tcp port 3389 (rdp) for unfiltered ingress access
    Given I have aws_security_group_rule defined
    When its type is ingress
	Failure: tcp/3389 port is defined within <IP_ADDRESS>/0 network in aws_security_group_rule.RDP_YOLO.
    Then it must not have tcp protocol and port 3389 for <IP_ADDRESS>/0
      Failure:

Feature: Ensure all aws instances aside from bastion hosts, root/ebs block volumes are configured and encrypted at rest upon launch  # /Users/mdesmarest/repos/terraform-compliance-features/features/unencrypted_block_device.feature
Background: Check to make sure EC2 instances are in the configuration and not named bastion
    Given I have aws_instance defined
    When its name is not bastion

Scenario: Ensure root_block_device is configured
    Given I have aws_instance defined
    When its name is not bastion
	Failure: aws_instance.missing_rootblock (aws_instance) does not have root_block_device property.
    Then it must have root_block_device
      Failure:

Scenario: Encryption flag defined and set to true for all root_block_device(s) on launch
    Given I have aws_instance defined
    When its name is not bastion
    When it has root_block_device
	Failure: Resource aws_instance.nonencrypted_Root_ebs_too does not have its encrypted property enabled (its encrypted=[]).
    Then its encrypted must be enabled
      Failure:

Scenario: Encryption flag defined and set to true for all ebs_block_device(s) on launch
    Given I have aws_instance defined
    When its name is not bastion
    When it has ebs_block_device
	Failure: Resource aws_instance.missing_rootblock does not have its encrypted property enabled (its encrypted=[]).
	Failure: Resource aws_instance.nonencrypted_Root_ebs_too does not have its encrypted property enabled (its encrypted=[]).
    Then its encrypted must be enabled
      Failure:

2 features (0 passed, 2 failed)
5 scenarios (0 passed, 5 failed)
7 steps (2 passed, 5 failed)
Run<PHONE_NUMBER> finished within a moment
Suggested Solution description ( if you have any ) :
We are currently running Terraform-Compliance in with Atlantis and piggybacking on the Atlantis gitbot output. We would like to keep output to a minimum but a bit more verbose than the fails.
We are using this within the PR and atlantis check Terraform plan output  to guide engineers to correct compliance errors and would like to be able to guide them to the specific feature they are failing on via link, and also guide to fixes
The most Ideal option would be to add another parameter a bit less spartan than -S
an output like:
`Feature: Ensure ingress security group rules do not contain unfiltered access on vulnerable ports  # /Users/mdesmarest/repos/terraform-compliance-features/features/security_group_rule_ingress_all_0s.feature
Failure: tcp/22 port is defined within <IP_ADDRESS>/0 network in aws_security_group_rule.ssh_yolo.
Failure: tcp/3389 port is defined within <IP_ADDRESS>/0 network in aws_security_group_rule.RDP_YOLO.`
Possibly without the feature pass/fail box below:
2 features (0 passed, 2 failed)
5 scenarios (0 passed, 5 failed)
7 steps (2 passed, 5 failed)
Alternatively instead of JUST the failing message, a true "quiet mode" that only passes the features and scenarios that did fail along with what flagged them as -S does would be totally acceptable as well

You are right, its problematic.
I will have a look on this one.

Hi @mdesmarest
I noticed this issue after opening #398, which will ommit Passing/Skipping Scenarios from the output but still have the following format for failing scenarios:
Feature: Feature for issue 343  # /path/to/features/

    Scenario: Failing Scenario 1
        Given I have resource that supports tags defined
        Then it must have tags
        And its value must not be null
          Failure: tags property in aws_s3_bucket.c is considered to be Null. It is set to {}.

    Scenario: Failing Scenario 2
        Given I have resource that supports tags defined
        Then it must have tags
        And its value must be bad
          Failure: tags property in aws_s3_bucket.a resource does not match with ^bad$ case insensitive regex. It is set to none.
	  Failure:  tags property in aws_s3_bucket.a resource does not match with ^bad$ case insensitive regex. It is set to ok.
          Failure:  tags property in aws_s3_bucket.b resource does not match with ^bad$ case insensitive regex. It is set to .
	  Failure:  tags property in aws_s3_bucket.b resource does not match with ^bad$ case insensitive regex. It is set to ok.

2 features (0 passed, 2 skipped)
8 scenarios (2 passed, 4 failed, 2 skipped)
20 steps (14 passed, 4 failed, 2 skipped)
Run<PHONE_NUMBER> finished within a moment

This might still be a bit too verbose for your use case, as it's going to be printing the entire scenario if it fails.
Would something along the lines of
Feature: Feature for issue 343  # /path/to/features/
    Scenario: Failing Scenario 1
          Failure: tags property in aws_s3_bucket.c is considered to be Null. It is set to {}.

    Scenario: Failing Scenario 2
          Failure: tags property in aws_s3_bucket.a resource does not match with ^bad$ case insensitive regex. It is set to none.
		  Failure:  tags property in aws_s3_bucket.a resource does not match with ^bad$ case insensitive regex. It is set to ok.
		  Failure:  tags property in aws_s3_bucket.b resource does not match with ^bad$ case insensitive regex. It is set to .
		  Failure:  tags property in aws_s3_bucket.b resource does not match with ^bad$ case insensitive regex. It is set to ok.

2 features (0 passed, 2 skipped)
8 scenarios (2 passed, 4 failed, 2 skipped)
20 steps (14 passed, 4 failed, 2 skipped)
Run<PHONE_NUMBER> finished within a moment

Be more useful?
Alternatives could be:
Feature: Feature for issue 343  # /path/to/features/
    Scenario: Failing Scenario 1
    Scenario: Failing Scenario 2

2 features (0 passed, 2 skipped)
8 scenarios (2 passed, 4 failed, 2 skipped)
20 steps (14 passed, 4 failed, 2 skipped)
Run<PHONE_NUMBER> finished within a moment

Or
2 features (0 passed, 2 skipped)
8 scenarios (2 passed, 4 failed, 2 skipped)
20 steps (14 passed, 4 failed, 2 skipped)
Run<PHONE_NUMBER> finished within a moment

Customizing the -S flag can be possible

@Kudbettin  Thanks so much for the reply,
This type of output is much better. We are leveraging some awk filters to get just feature/failure outputs currently. This is not ideal either. Showing the failing feature and its description(which allows us to guide users to the correct compliance), The scenario it failed on(omitting the steps) and the failures on each scenario but withholding the STEPS is a huge improvement.
We are unconcerned with showing anything that is not a feature or a scenario that failed.
A feature should only be displayed when there is a failure and a scenario within that feature should only display if there is a failure on it and display the failures under each. Omitting the final block of passed/failed features/ scenarios/steps would remove a lot of noise as well(also filtering this with awk) as well as the feature path since it doesn't apply to anything of value on the output since our instance is cloning a features repo in.
We are building our Features based on the static limitations of how the output is displayed, depending on output options for Silent or a more quiet mode greatly influence how we write features. We aren't concerned with compliance checking in the sense of everything must pass or passing providing any output at all but provide as much context to either our module repo or feature repo for steps to correct misconfigurations when Failure occurs.
Preferred output option among choices(it would be perfect filter out the feature path and the features/scenarios/steps pass/fail at the bottom):
Feature: Feature for issue 343  # /path/to/features/
    Scenario: Failing Scenario 1
          Failure: tags property in aws_s3_bucket.c is considered to be Null. It is set to {}.

    Scenario: Failing Scenario 2
          Failure: tags property in aws_s3_bucket.a resource does not match with ^bad$ case insensitive regex. It is set to none.
		  Failure:  tags property in aws_s3_bucket.a resource does not match with ^bad$ case insensitive regex. It is set to ok.
		  Failure:  tags property in aws_s3_bucket.b resource does not match with ^bad$ case insensitive regex. It is set to .
		  Failure:  tags property in aws_s3_bucket.b resource does not match with ^bad$ case insensitive regex. It is set to ok.

2 features (0 passed, 2 skipped)
8 scenarios (2 passed, 4 failed, 2 skipped)
20 steps (14 passed, 4 failed, 2 skipped)
Run<PHONE_NUMBER> finished within a moment

To give an example, we are implementing a series of modules to standardize configuration, and in cases of aws s3 buckets there may be more than one bucket being created, thus we can't leverage a static "address" value in when and the when its address is "value" can't be regex'd(cool if this could be done) to account for different module blocks changing the address field . We also can't use referenced in a  WHEN ( this would be fantastic if this can get done and accomplishes the same objective). This would prevent the need for 2 scenarios, one to check for the Then it must have "module." referenced  and a second to run through things like properties within the resource, that will also flag no those that are not configured with a module.
Feature: Ensure S3 buckets are created using the tf-module-s3-bucket module
    (Module Ref: https://github.com/xxx/tf-module-s3-bucket)
    (Ref: https://github.com/xxx/terraform-compliance-features/blob/master/features/s3_module_test.feature)

  Scenario: ensure all s3 buckets are created using a module
    Given I have aws_s3_bucket defined
    # This flags when the address path for an s3 bucket does not start with "module."
    # resources created without a module lead with their resource type first
    # Please see above  in feature for 2U provided s3 bucket module and use this for configuration
    Then it must have "module." referenced

The failure message on its own:
 "Failure: module. is not referenced within aws_s3_bucket.all_good." is not very contextual as to why, and can get even more confusing without the feature and its stated use, and the scenario it failed on

@Kudbettin  new silent mode works great, Thanks!


swagger-gradle-plugin-2.1.4: openApiFile not being merged into output file when resolve task is run from command line

swagger-gradle-plugin version 2.1.4:
build.gradle.kts
plugins {
    id("io.swagger.core.v3.swagger-gradle-plugin") version "2.1.4"
}

I'd like to use the openApiFile parameter to add a required info block into my resulting swagger file. When I run the resolve task via the command line, the output file is created successfully but doesn't contain the info block from the input file. I have followed this thread: https://github.com/swagger-api/swagger-core/issues/3056 but am still unable to get it to work. I have tried both JSON and YAML.
swagger-input.json:
{
  "openapi" : "3.0.1",
  "info": {
    "version": "1.0",
    "title": "Swagger Pet Sample App",
    "description": "This is a sample server Petstore server.  You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/).  For this sample, you can use the api key `special-key` to test the authorization filters.",
    "termsOfService": "http://swagger.io/terms/",
    "contact": {
      "email"<EMAIL_ADDRESS>    },
    "license": {
      "name": "Apache 2.0",
      "url": "http://www.apache.org/licenses/LICENSE-2.0.html"
    }
  }
}

swagger-input.yaml:
openapi: 3.0.1
info:
  version: '1.0'
  title: Swagger Pet Sample App Config File
  description: 'This is a sample server Petstore server.  You can find out more
    about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net,
    #swagger](http://swagger.io/irc/).  For this sample, you can use the api key
    special-key to test the authorization filters.'
  termsOfService: http://swagger.io/terms/
  contact:
    email<EMAIL_ADDRESS>  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html

Gradle resolve task:
tasks {
    resolve {
        outputFileName = "swagger"
        outputFormat = JSONANDYAML
        prettyPrint = true
        classpath = sourceSets["main"].runtimeClasspath
        resourcePackages = mutableSetOf("com.foo")
        openApiFile = File("src/main/resources/swagger-input.yaml")
    }
}

Notes

If the path to openApiFile does not exist, it throws an error. But if the file itself is not properly formatted (e.g. invalid JSON or invalid YAML), no error is thrown.
The file seems to be created correctly if I run the resolve task via intellij. My project is structured like this:

root (dir)
- gradlew
- project (dir)
	- build.gradle.kts (resolve task defined here)

The command I am running on the command line is ./gradlew :project:resolve
Happy to provide more information - thanks for any help!

sorry, this is user error. something to do with classpaths. when running the gradle task from intellij this works.

Resolved my issue, I needed to define the openApiFile with respect to the project build dir:
        outputDir = File(project.buildDir, "resources/main/public/swagger")
        openApiFile = File(project.buildDir, "resources/main/swagger-input.yaml")


Workspace - Back button returns to the same workspace page after upgrading to Control

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Issue found when validating https://github.com/Expensify/App/pull/45730
Version Number: 9.0.14-1
Reproducible in staging?: y
Reproducible in production?: n
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause internal team
Slack conversation:
Action Performed:

Go to staging.new.expensify.com
Create a new workspace.

Toggle on Report fields.
Click Upgrade.
Click Got it, thanks.
Click on the app back button.

Expected Result:
App will return to workspace list page (previous page).
Actual Result:
App returns to the same workspace editor page, which is from More features back to More features page again.
On prod, the back button works correctly as it returns from Profile to More features page.
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
https://github.com/user-attachments/assets/4b8cb538-4ae6-4988-9a2f-e3519f3f1d3b

View all open jobs on GitHub

Doesn't look web-e related. removing deployblocker label.

I see that in production it takes you automatically to the workspace's Profile page after the upgrade:
https://github.com/user-attachments/assets/f3ee146a-27f4-4f82-8e4d-260c29203f0c
This doesn't happen in the recording from this issue

I think this is happening because of this PR: https://github.com/Expensify/App/pull/45730/files

cc @allroundexperts @rushatgabhane

I think this works well if you scrolled down to find Report fields inside More features, because then the Back button will scroll you down to where you were when you clicked Report fields and a second click will take you out to the Profile:
https://github.com/user-attachments/assets/d3f43655-dada-41ff-b785-a883575d0c9c
but, if you didn't scroll down to find the Report fields, then the first press on the back button will not move the scrollbar making it look like it did nothing:
https://github.com/user-attachments/assets/cd503293-328a-4a05-90ff-886d6c16f77d

I think the easiest fix is that we should do any navigation when we upgrade in this flow. We are currently scrolling up, but what for?

Creating a revert here since I'm not sure what is the right way to fix this and the transition also doesn't look good: https://github.com/Expensify/App/pull/46460

Hm... Is a revert really needed here? Asking because this PR fixes issues which might be of greater importance than this bug.

Hm... Is a revert really needed here? Asking because this PR fixes issues which might be of greater importance than this bug.

Do you have some examples? I'm just suggesting a revert because I didn't see it fixing something of importance, I don't have a clear solution for this deploy blocker, and the animation here looks broken https://github.com/Expensify/App/pull/46460

Reverted and tested: https://github.com/Expensify/App/pull/46460


Game crashes and world becomes corrupted/unplayable

I was messing around with the mod in creative, and a sculk enderman was scouting an area right next to the sculk tomb. I was summoning evokers around it, trying to see if they could kill it, and the game crashed.
I didn't really lose anything because I just made the world like 15 minutes ago, but this could seriously ruin someone's day.
Here's the log:
crash-2024-05-10_23.01.02-server.txt
Extra info: I'm using Modrinth, windows 11, and I got the crash report from Not Enough Crashes. Here's a modlist:
modlist.txt
The vexes were infected with Burrowed and Diseased Cysts, so I think when those ran out, the game had an aneurism or something. It's also worth noting that I made the evokers go after the sculk enderman using mob battle mod, so the vexes were mad at it as well.

I found the source of the crash! A vex was infected with burrowed, and inside bedrock at the bottom of the world. The game tried to replace the bedrock with a block of sculk mass, but couldn't, either because it's bedrock, or more likely, because the block below was void. It's kind of a circumstantial crash, but still should be looked into relatively quickly.
Interesting note: when the crash occurs, it actually displays the error message "Server closed" and the world becomes corrupted, but the game doesn't initially crash. If you try to load it back up again, the game crashes. Apparently, Minecraft worlds actually run on a local server, so the crash is definitely happening on the server side.

This will be resolved in the next major update.


restrictedcapabilities URL is missing

[Enter feedback here]
The namespace to be referred to enable restricted capabilities is not valid anymore.
The url:
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
Error received:

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

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

ID: 4ee37beb-26fc-4eca-d48e-08b4c1563b2f
Version Independent ID: 2cf94c45-f764-78fc-f72b-ea35a09ba066
Content: Run in the background indefinitely - UWP applications
Content Source: windows-apps-src/launch-resume/run-in-the-background-indefinetly.md
Product: uwp
Technology: processes-and-threading
GitHub Login: @lastnameholiu
Microsoft Alias: alholiu

Hello. We apologize for the delay in resolving this issue. As we transition to a new feedback system, we are closing all outstanding issues. Any issues that can be addressed will be tracked using a different internal tool, and we regret that we won't be able to provide further updates on this particular matter. We value your input and assure you that all feedback is reviewed. We recommend visiting the Microsoft Q&A site, where your issue may have already been discussed.


Feature Request: Ability to mark your place and auto-scroll to it

Because of my time zone, hundreds of tweets happen overnight and it's hard to keep track when the feed auto-fills and pushes it down as I try to read it. If I had a way to mark my place with a colour change, and another button to take me there, I could avoid missing anything that happens. I base this idea on a script for Old Twitter by ArmEagle called Twitter Last Read.

No plans to do this for now, sorry!


Use actual feed position in list when moving down by 1

Fixes https://github.com/newsboat/newsboat/issues/1934

Coverage remained the same at 59.181% when pulling adb1ae77b0723220a786549d93fb19af901e1bf2 on dennisschagt:fix-mark-feed-read-jump into cc8f88060f2e68ad394c58457abec8f5374c5df3 on newsboat:master.

Thank you!


It should be possible to resize error popups

For context, I'm talking about pop-ups like this:

I'd like to be able to resize this because I can't always see the full error, and sometimes I have to scroll up and down repeatedly to figure out what the error messages trying to tell me.

Looks like a duplicate of #56525

Assuming the same code is used for that, I would agree. I apologize, I tried to look for duplicates, but i was using the search term "popup"


Fix 256: Pin enum34 version to 1.1.6 for python2.7

Fixes #256 - capa requires halo==0.0.30, which has a dependency on
spinners>=0.0.24. spinners 0.0.24 has a dependency on enum34==1.1.6,
but 1.1.10 gets installed and used on my machine without the version
being pinned to 1.1.6. This issue occurs when using python 2.7.

awesome!


update finalzier to CRD doc

Depends-On: https://github.com/openstack-k8s-operators/lib-common/pull/519

/test horizon-operator-build-deploy-kuttl


Unable to type in anything for newtable

System information:

Operating system (distribution) and version, Win 10.0.18363, Pro
DBeaver version = 7.0.3202004191823
Java version, not aware of any as I'm new
Additional extensions, not aware of any as I'm new

Connection specification:

Database name and version = Postgres v12
Driver name, see below
Do you use tunnels or proxies (SSH, SOCKS, etc)? not aware of any as I'm new

After installing Postgres and DBeaver, I can create a new schema. For newtable,  tab, every tab under "Comment:" won't accept input. For example I can click on any cell in  tab but cursor won't show, no matter what I type nothing shows up, same for all other tabs like
No error is given.

hi @TLKG ,
you cannot type anything here. to create, e.g., table, you could choose Create New Table in context menu

uslss,
Your screen is BEFORE "Create New Table".
If you look at my screenshot in detail, I was already inside of Create New Table.
On June 1, 2020 at 8:42 AM, uslss<EMAIL_ADDRESS>wrote:
hi @TLKG ,
you cannot type anything here. to create, e.g., table, you could choose Create New Table in context menu
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Actually I found a way, r-click inside of my newtable screen's Columns area, choose "Create New Column". But this is not intuitive and cumbersome.

Oh, shame on me. Seems that issue is solved. If you have any idea how we can improve this, feel free to create feature request or enhancement.
Best regards,


Detect generic motion events

Used to determine whenever a user interacts with the map.

Simple and easy. Merging.


How to log multi line logs to stdout

How can I log multiple errors (such as stack traces) to stdout? I have tried many different combinations of  ErrorFileLog and StreamLogger (to stdout) with the line formater but was unsuccessful. Do you have an example of how this might work?

Did you call $lineFormatter->allowInlineLineBreaks() and $lineFormatter->includeStacktraces() on your formatter?

I passed true for that option to the constructor.
On Fri, Apr 1, 2016, 9:22 PM Jordi Boggiano<EMAIL_ADDRESS>wrote:

Did you call $lineFormatter->allowInlineLineBreaks() and
$lineFormatter->includeStacktraces() on your formatter?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Seldaek/monolog/issues/752#issuecomment-204501631

It seems that allowInlineLineBreaks() does not work because everything is passed through json_encode which is ruining it. Check : https://3v4l.org/C0P79
php > $variable="This\nIs\nA\nMultiline\nInput";
php > echo $variable;
This
Is
A
Multiline
Input
php > echo json_encode($variable);
"This\nIs\nA\nMultiline\nInput"
php > echo json_encode($variable, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
"This\nIs\nA\nMultiline\nInput"


Fix mini license header

@mrutkows I am extremely sorry for proposing invalid headers in all files under wskdeploy tests folder. Please verify these changes with scan code and let me know if there is anything i need to fix.


KeyError: Qubit(QuantumRegister(2, 'q'), 0)

Describe the bug
I have a circuit that works fine on the simulator (even the isa_circuit), but when trying execution on real hardware with qiskit_ibm_runtime.SamplerV2 I get the error: KeyError: Qubit(QuantumRegister(2, 'q'), 0). I first used qiskit-ibm-runtime==0.25.0 and got no output (I could only see that the job had failed on the quantum platform), then updated to version 0.30 and got the error I mentioned.
Steps to reproduce
Here is the code to create the circuit:
import numpy as np
from scipy.linalg import expm

from qiskit.circuit.library import UnitaryGate
from qiskit.circuit.classical import expr
from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister
from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager
from qiskit_aer.primitives import Sampler

from qiskit_nature.second_q.drivers import PySCFDriver
from qiskit_nature.second_q.mappers import ParityMapper
from qiskit_nature.second_q.algorithms import GroundStateEigensolver
from qiskit_nature.second_q.circuit.library import HartreeFock

from qiskit_algorithms import IterativePhaseEstimation

from qiskit_ibm_runtime import QiskitRuntimeService

driver = PySCFDriver(
    atom=f'H .0 .0 .0; H .0 .0 0.73',
    basis='sto3g'
)

molecule = driver.run()
mapper = ParityMapper(num_particles=molecule.num_particles)
fer_op = molecule.hamiltonian.second_q_op()
tapered_mapper = molecule.get_tapered_mapper(mapper)
qubit_op = tapered_mapper.map(fer_op)

num_iterations = 4
state_in = HartreeFock(molecule.num_spatial_orbitals, molecule.num_particles, tapered_mapper)
sampler = Sampler()
U = UnitaryGate(expm(1j*qubit_op.to_matrix()))

def x_measurement(qc, qubit, cbit):
    """Measure 'qubit' in the X-basis, and store the result in 'cbit'"""
    qc.h(qubit)
    qc.measure(qubit, cbit)

q = QuantumRegister(2, name='q')
c = ClassicalRegister(num_iterations, name='res')
circuit = QuantumCircuit(q, c)

for k in range(1, num_iterations+1):
    circuit.reset(0)
    circuit.h(0)

    conditions = [expr.lift(c[j]) for j in range(0, k-1)] # phase correction conditions

    for j, cond in enumerate(conditions):
        with circuit.if_test(cond):
            circuit.p(-np.pi/(2**(len(conditions) - j)), 0) # phase correction

    cu = U.power(2**(num_iterations-k)).control(1, f'c-U^{2**(num_iterations-k)}')
    circuit.compose(cu, inplace=True)
    x_measurement(circuit, q[0], c[k-1])

service = QiskitRuntimeService(channel="ibm_quantum")
backend = service.least_busy(operational=True, simulator=False, dynamic_circuits=True, use_fractional_gates=False)
print(backend.name)
target = backend.target
pm = generate_preset_pass_manager(target=target, optimization_level=3)

isa_circuit = pm.run(circuit)

Here is the part for real hardware execution:
from qiskit_ibm_runtime import SamplerV2
sampler = SamplerV2(mode=backend)

job = sampler.run([isa_circuit]) # here is the error

This works as expected:
sampler = Sampler()

job = sampler.run([isa_circuit])
result = job.result()

Expected behavior
The job is executed without errors.
Suggested solutions
I wonder if the problem is the same as here: in fact, with qiskit_aer==0.14 I got the same error with the simulator, but updating to version 0.15 fixed it.
Additional Information
qiskit==1.1.0
qiskit-aer==0.15.0
qiskit-algorithms==0.3.0
qiskit-ibm-runtime==0.30.0
qiskit-machine-learning==0.7.2
qiskit-nature==0.7.2
qiskit-nature-pyscf==0.4.0
qiskit-qasm3-import==0.5.0
qiskit-transpiler-service==0.4.5

qiskit-ibm-runtime version: 0.30.0
Python version: Python 3.10.15
Operating system: Ubuntu 20.04 (virtual machine)

@davide710 I believe this was fixed in the latest release, 0.31 - can you try again

Hello @kt474 , thank you for the answer, unfortunately updating to qiskit-ibm-runtime==0.31 didn't solve this, now it's gone back to simply show me the failed job on the platform and there I read the error message. I also updated to qiskit==1.2. Also, in  #1979 @jwoehr described a similar problem with a dynamic circuit, and he is also using the latest version. To add more context, the error shows up on fake providers too, and I was able to run a dynamic circuit here

Sorry, we just pushed another update on the server side to fix this issue - let me know if this job still fails

Yes @kt474, now it works! Thank you!


Conversion from Coco Keypoints to Open pose ?

Hi Is there a script or something similar to convert coco keypoints with (x1,y,1,c1, ....x17,y17,c17) format where x,y are co-ordinates and c is the confidence score .

Hi, conversion to COCO format is here.

Thank you , just to understand correctly , what does the input parameter pose_entries imply ? And the second argument all_keypoints is it a vector or a list of size 1x51 in the following order  [x1,y1,c1,x2,y2,c2,x3,y3,c3,.....x17,y17,c17] where x1  and y1  are the cartesian co-ordinates and c1 is the confidence score ??

all_keypoints is an array of all found keypoints, each entry is keypoint coords, it's id and score.
pose_entries is a list of found poses, each pose consist of keypoints ids from all_keypoints array.
You need coco_keypoints list, which is returned from function convert_to_coco_format, each entry (found pose) is 51 elements array with keypoints in COCO format.

Thank you , I am trying to convert 2d detector hrnet into the coco keypoints of open pose. If i want to do it for single person does pose_entries = 1 . For the keypoints, I have an array which i can convert into the list of 51 points which as you mentioned should be of the format [x1,y,1,x2,y2,...x17,y17,c1,c2,...c7] where x,y are cartesian coordinates and c are pose scores ?

COCO format is a 51 element array with cartesian coordinates and keypoint score for each keypoint.

Hi i could output the , coco 51 element array as suggested , above. I am doing single person pose estimation . I am a bit confused what parameter does pose_entries stand for ??  To check it manually i had put pose_entries to 1 ( as it is single person) which throws an error. Perhaps I am wrong in it ??

pose_entries is a list of found poses, each pose consist of keypoints ids from all_keypoints array. If algo didn't find any pose, tis list will be empty, or, if algo find more than one pose, the length will be equal to number of found poses.

Hi , thanks for the explanation . I am trying to use posenet as a 2d detector , and convert the 2d keypoints to the open pose coco format.Posenet outputs in the  coco_format list as mentioned above per frame [x1,y,c1,x2,y2,c2,.... x17,y17,c17]] . This is for single person , pose estimation. How can i use the above mentioned fucntion , as there there is no mention of pose entries which is used as a input argument here.

What are you going to achieve?

Hi , what i have is a set of COCO keypoints that is extracted per frame per second with x,y cartesian co-ordinates and c as confidence score for each joints. I wanted to convert each of these COCO keypoints into Open Pose COCO keypoints per frame per second and compare the differences

If you want to convert keypoints from MS COCO into OpenPose format, just rearrage them, according to OpenPose order. Neck can be obtained as the middle between left and right shoulders.

Hope, it helped.


Luxon

[x] I have changed my target branch to develop :facepunch:

Issue #61
Description
As requested, here is the PR. I had to do some changes to package.json, I hope they are okay. All tests are still passing. Tell me if something needs to be changed.

> cross-env NODE_ICU_DATA=node_modules/full-icu jest && npm run typescript
node: could not initialize ICU (check NODE_ICU_DATA or --icu-data-dir parameters)

Hm, that's weird. It runs fine on my machine. I need to set this environment variable for the localization. Luxon is using native Intl

@lookapanda Can you please refer build failing and change your target branch to develop

@lookapanda

https://github.com/dmtrKovalenko/material-ui-pickers/pull/345#issuecomment-380079928
I was talking about the failing build. I don't know why the build fails, it runs locally.

<EMAIL_ADDRESS>all-tests /home/travis/build/dmtrKovalenko/material-ui-pickers/lib
cross-env NODE_ICU_DATA=node_modules/full-icu jest && npm run typescript
node: could not initialize ICU (check NODE_ICU_DATA or --icu-data-dir parameters)

@lookapanda why does it need at all?

Because I wanted to also test that the localization is properly working.

I'm looking into this

ok, tests are passing now

Good job 👍
Just change your target branch to develop

lookapanda wants to merge 22 commits into dmtrKovalenko:develop from lookapanda:luxon
Didn't I already do that?

@lookapanda Oh, sorry, I was from phone and misslead that you backported master to your branch. Thanks for your work!

Okay, I investigated a bit about the performance. Any idea how we could improve the performance of getWeekArray?
I ran a benchmark:
Luxon: getWeekArray x 1,081 ops/sec ±4.26% (89 runs sampled)
DateFns: getWeekArray x 67,535 ops/sec ±1.31% (91 runs sampled)

As you can see, DateFns is much, much faster. There is nothing really one can do about that fact as date-fns utilizes JS dates directly and Luxon works with wrappers, but can we improve the performance somehow?
It's very much noticeable when you open the date picker, for example. It takes some time until the modal opens.

@lookapanda from a fast look, looks like getWeekArray makes too much iterations:
https://github.com/dmtrKovalenko/material-ui-pickers/blob/b09fa89a92f00a3f876e1c2ce6006ef3e05a41ad/lib/src/utils/luxon-utils.js#L127-L149
There are two maps and forEach, which doesn't make a lot of sense for me.
That being said, if poor performance is caused by Luxon itself - we have nothing to do with that.


typo: Aquire -> Acquire

Docs Build status updates of commit 9ab133f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/patterns/leader-election.md
:white_check_mark:Succeeded
View

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

@nschonni : Thanks for your contribution! The author, @dragon119, has been notified to review your proposed change.


Severe performance issues during search

What happened?
When a user enters search content, if the input is very short (e.g., 1 or 2 characters), it results in an enormous number of search results, causing excessively high CPU usage. This leads to the app freezing for several seconds or even tens of seconds.
The edited file is only a few dozen KB, but there may be 100,000+ hits in the search results.  Is it because the open-source version itself is not optimized in this regard, or is there a problem with the way I'm using it?
Thank you.
What are the steps to reproduce?
Use the search tool and enter only one character.
What is the expected behavior?

@Blankwonder Thanks for opening the issue (and for being a sponsor!).
I want to start by emphasizing that the Runestone Text Editor app uses the exact same version of the Runestone framework as this repository, so replicating the app's behavior should be possible.
That said, I noticed a reference to UITextSearchingHelper in your call stack, which suggests you're using the Find & Replace functionality enabled via isFindInteractionEnabled on the text view. The Runestone app doesn't use this property. Instead, it relies on a custom search implementation built around the TextView's search(for:) function.
I can't rule out the possibility of a performance issue with isFindInteractionEnabled.

Yes, I used the native isFindInteractionEnabled to support search and find. Sorry for not making it clear earlier.

I conducted some research myself, and the root of the problem lies in that for each match, UITextSearching calls the decorate method to mark a new range. However, this method triggers the highlightedRanges setter of HighlightService, which causes HighlightService to recalculate all highlight areas. If there are many highlight areas, this leads to an exponential increase in computational overhead.
I made adjustments to the relevant code by caching changes to highlightedRanges before performTextSearch is completed and setting them all at once after it finishes, which resolved the issue.
    func performTextSearch(queryString: String, options: UITextSearchOptions, resultAggregator: UITextSearchAggregator<AnyHashable?>) {
        _searching = true
        performTextSearch(for: queryString, options: options) { searchResults in
            for searchResult in searchResults {
                let textRange = IndexedRange(searchResult.range)
                resultAggregator.foundRange(textRange, searchString: queryString, document: nil)
            }
            resultAggregator.finishedSearching()

            DispatchQueue.main.async {
                self._searching = false
                self.applyHighlightedRanges()
            }
        }
    }

    func decorate(foundTextRange: UITextRange, document: AnyHashable??, usingStyle style: UITextSearchFoundTextStyle) {
        guard let foundTextRange = foundTextRange as? IndexedRange else {
            return
        }
        _highlightedRanges.removeAll { $0.range == foundTextRange.range }
        if let highlightedRange = _textView.theme.highlightedRange(forFoundTextRange: foundTextRange.range, ofStyle: style) {
            _highlightedRanges.append(highlightedRange)
        }

        if (!_searching) {
            self.applyHighlightedRanges()
        }
    }

    func applyHighlightedRanges() {
        _textView.highlightedRanges = _highlightedRanges;
    }

    func clearAllDecoratedFoundText() {
        _highlightedRanges = []
        _textView.highlightedRanges = []
    }

I'm not sure if this method is the optimal solution to the problem. If needed, I can create a corresponding code pull request.


Help

The following error occurred with the installation of the dashboard.
Failed to disable unit: Unit file helium-status-check.timer does not exist.
cp: cannot overwrite non-directory '/var/dashboard/services' with directory 'dashboard/services'
cp: cannot overwrite non-directory '/var/dashboard/statuses' with directory 'dashboard/statuses'
chown: cannot access '/var/dashboard/services/': Not a directory
chown: cannot access '/var/dashboard/statuses/': Not a directory
chmod: cannot access '/var/dashboard/services/': Not a directory
chmod: cannot access '/var/dashboard/statuses/': Not a directory
/etc/monitor-scripts/pantherx-ver-check.sh: line 8: /var/dashboard/statuses/pantherx_ver: Not a directory
/etc/monitor-scripts/pubkeys.sh: line 9: /var/dashboard/statuses/animal_name: Not a directory
/etc/monitor-scripts/pubkeys.sh: line 15: /var/dashboard/statuses/pubkey: Not a directory
bash: line 89: /var/dashboard/services/dashboard-update: Not a directory

@helo112233 I will close it first, if you still have problems, please reopen it. thanks.


.FindByAsync()

Similar to .FindByIdsAsync() except you can add the property to search.
[Document(StorageType = StorageType.Json)]
public class Customer
{
   [Indexed] public string FirstName { get; set; }
   [Indexed] public string LastName { get; set; }
   public string Email { get; set; }
   [Indexed(Sortable = true)] public int Age { get; set; }
   [Indexed] public string[] NickNames {get; set;}
}

var ages = [12,24,36];
var entites = RedisCollection<Customer>().FindByAsync(x => x.Age, values);

This would probably be good coverage for the .Contains() request attempting to do the same.

Looks like this is being resolved LIVE issue #91.  I think we can close this out, as the .Contains() is the more natural pattern.

Yeah, I think this is a bit awkward, granted it would make the expression tree easier to parse lol. As you said I started this today in #91  so I think let's just stick to that.


feat(rear-panel):  bring up estop switch monitor task

Not been tested yet

Codecov Report

Merging #606 (752885f) into main (2680171) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 752885f differs from pull request most recent head 96d0a2b. Consider uploading reports for the commit 96d0a2b to get more accurate results

@@           Coverage Diff           @@
##             main     #606   +/-   ##
=======================================
  Coverage   83.47%   83.47%
=======================================
  Files          84       84
  Lines        3056     3056
=======================================
  Hits         2551     2551
  Misses        505      505

Impacted Files
Coverage Δ

include/rear-panel/core/messages.hpp
34.17% <ø> (ø)


the script improves the situation but there is something limiting still L480 with i7-8550U

I have an L480 with a i7-8550U. (latest bios)
The script improves the situation (due to the thermal limits) but there is still something throtteling the CPU without need and limiting the potential. When I start stress with c of 1,2 or 8 I first get a period of high CPU performance (like I would expect it) of about 14 to 28 secodns. Then it gos with the following pattern: it drops very drastically for about 3 seconds followed by a higher (but not as high as at the beginning) utilisation for about 3 seconds. This pattern then repeats as long as cpu stress is there. Even if the temperature is 10°C below the thermal threshold (stress with c of 1 or 2) the performance goes down every 3 seconds for 3 seconds. When it goes down the temperature drops imeadiately to about 55 to 63°C. As I understand it there should be no need to throttle that long, much and offten. I guess there is some other magic register in the CPU involved.
I can see similar patterns on the machines of colleges using the s version.
Beside that lenovo does let the fan only run 2/3 of its max speed (which gets quit loud). Thinkfan solves this for me but the effect on performance is low anyway. Seems like lenovo did not design the laptops properly to get the heat away.
Let me know if I should send you some MSR values.

Are you using TLP? If yes, can you post your config (on pastebin)? Also try to set Update_Rate_s to 1.

I have tlp installed and configured to load the battery only to 60%. I do not use other aspects of it intentionally. I did disable it by config now for testing (/etc/default/tlp) and did stop the tlp service. I also tried lenovo throttle fix config with 1second re-apply. All those things do not change the behaviour.

I also found MSR 0x1B0 set to 0110b = 6 and did try setting it to 0. It does not seem to have a big effect but I think the CPU is using turbo more early with it set to 0.

Can you please test again with TLP enabled also for HWP and x86_energy_perf_policy? Or you can manually set both to performance.

Another thing seems to be MSR 0x64b.
It was set to 0 and the drops did go down to about 12W.
Setting it to 1 did the drops go down to about 7W.
Setting  to 2 did the drops only go down to 14/15W.
So it seems the script should set this to 2, too.

TLP enabled or disabled does not seem to have a effect. The described issue is the same with or without it.
TLP config:
TLP_ENABLE=1
TLP_DEFAULT_MODE=AC
TLP_PERSISTENT_DEFAULT=0
DISK_IDLE_SECS_ON_AC=0
DISK_IDLE_SECS_ON_BAT=2
MAX_LOST_WORK_SECS_ON_AC=15
MAX_LOST_WORK_SECS_ON_BAT=60
CPU_HWP_ON_AC=performance
CPU_HWP_ON_BAT=balance_power
SCHED_POWERSAVE_ON_AC=0
SCHED_POWERSAVE_ON_BAT=1
NMI_WATCHDOG=0
ENERGY_PERF_POLICY_ON_AC=performance
ENERGY_PERF_POLICY_ON_BAT=power
DISK_DEVICES="sda sdb"
DISK_APM_LEVEL_ON_AC="254 254"
DISK_APM_LEVEL_ON_BAT="128 128"
SATA_LINKPWR_ON_AC="med_power_with_dipm max_performance"
SATA_LINKPWR_ON_BAT="med_power_with_dipm min_power"
AHCI_RUNTIME_PM_TIMEOUT=15
PCIE_ASPM_ON_AC=performance
PCIE_ASPM_ON_BAT=powersave
RADEON_POWER_PROFILE_ON_AC=high
RADEON_POWER_PROFILE_ON_BAT=low
RADEON_DPM_STATE_ON_AC=performance
RADEON_DPM_STATE_ON_BAT=battery
RADEON_DPM_PERF_LEVEL_ON_AC=auto
RADEON_DPM_PERF_LEVEL_ON_BAT=auto
WIFI_PWR_ON_AC=off
WIFI_PWR_ON_BAT=on
WOL_DISABLE=Y
SOUND_POWER_SAVE_ON_AC=0
SOUND_POWER_SAVE_ON_BAT=1
SOUND_POWER_SAVE_CONTROLLER=Y
BAY_POWEROFF_ON_AC=0
BAY_POWEROFF_ON_BAT=0
BAY_DEVICE="sr0"
RUNTIME_PM_ON_AC=on
RUNTIME_PM_ON_BAT=auto
USB_AUTOSUSPEND=1
USB_BLACKLIST_BTUSB=0
USB_BLACKLIST_PHONE=0
USB_BLACKLIST_PRINTER=1
USB_BLACKLIST_WWAN=1
RESTORE_DEVICE_STATE_ON_STARTUP=0
START_CHARGE_THRESH_BAT0=45
STOP_CHARGE_THRESH_BAT0=75

lenovo throttling fix config:
Enabled: True
Update_Rate_s: 1
PL1_Tdp_W: 29
PL1_Duration_s: 28
PL2_Tdp_W: 44
PL2_Duration_S: 0.002
Trip_Temp_C: 85
Update_Rate_s: 1
PL1_Tdp_W: 44
PL1_Duration_s: 28
PL2_Tdp_W: 44
PL2_Duration_S: 0.002
Trip_Temp_C: 95
HWP_Mode: True
CORE: 0
GPU: 0
CACHE: 0
UNCORE: 0
ANALOGIO: 0

I did not know of x86_energy_perf_policy and installed it.
However the output is the same with TLP running or not.
x86_energy_perf_policy output:
cpu0: EPB 0
cpu0: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu0: HWP_CAP: low 1 eff 8 guar 20 high 40
cpu1: EPB 0
cpu1: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu1: HWP_CAP: low 1 eff 8 guar 20 high 40
cpu2: EPB 0
cpu2: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu2: HWP_CAP: low 1 eff 8 guar 20 high 40
cpu3: EPB 0
cpu3: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu3: HWP_CAP: low 1 eff 8 guar 20 high 40
cpu4: EPB 0
cpu4: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu4: HWP_CAP: low 1 eff 8 guar 20 high 40
cpu5: EPB 0
cpu5: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu5: HWP_CAP: low 1 eff 8 guar 20 high 40
cpu6: EPB 0
cpu6: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu6: HWP_CAP: low 1 eff 8 guar 20 high 40
cpu7: EPB 0
cpu7: HWP_REQ: min 4 max 40 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0
cpu7: HWP_CAP: low 1 eff 8 guar 20 high 40

We should be able to write to MSR 0x614 as far as I understand but I can't write to it with wrmsr.  I can read however. This might be something interesing as well. Any idea why I can not write to it?

Some more findings:
It looks like the throttle kicks in when the CPU gets over 80°C for 3 seconds. I let the script apply a limit of 95°C which results in a MSR 0x1a2 Temperature Target=100 and  Target Offset=5. This sounds correct to me and works for the first ~14-28 seconds when the CPU gets some load but later it does not seem to work correct.
Is it possible to change the hidden 3s window or 80°C throttle?
Is there something else that should get set? with ACPI maybe?
In some cases I also see the Max Turbo Limit Log kicking in. This makes me think that the turbo ratio per core is something we should try to set.
I figured out that my Lenovo L480 is able to keep up with constant 17W to 18W on 8 cores in my about 23°C office room. This seems to be the limit of heat dissipation this device can handle with ~76°C - not triggering the 80°C throttle. However with less cores running some turbo it gets hotter with less Watts. For example with 2Cores getting load the temperature goes to ~85°C which seems to cause the throttle every 3 seconds for 3 seconds later.

Interesting. We need to investigate more. Maybe the EC is rewriting those values more frequently than in my T480s? I'm sorry but I don't think I could help for a couple of weeks since I'll be very busy :/
If you want you can keep looking for the cause of this issue and report here, it would be very helpful.

Finally I figured it out !!
Thermald is installed (ubuntu default as it seems) and does the throttle over setting RAPL !
It is reading temperatures for the thermal zones and setting trip points for slowing down. It was setting a 80°C trip on /sys/class/thermal/thermal_zone2/ and zone3 which are of type B0D4 and SEN1. I am not sure for which sensors those zone types stand for but hopefully CPU. However - since the limit is set quite low (lower then my 95°C in lenovo throttle fix config) thermald starts messing with the CPU RAPL, P-states, frequencies and everything settings and slowing stuff down. Sadly it is slowing it down quite dramatic - way more then ever needed. There is no need at all for thermald as far as I understand it - at least for the modern CPUs. The config is (quite useless) default from the package which was installed on ubuntu install as it seems. Stopping the service solves all issues.
Open Questions:
Why is thermald installed?
Why is it slowing the CPU down that much?
Does it make sense to configure it and let it run (I think: no)?
Feature request:

Please add more options to the tool - like setting MSR 0x1B0 (switching profile) and MSR 0x64b (cTDP up if I am correct). Also setting turbo ratios there would be ncie. Should I open a new feature request issue for it?
you can add the L480 to the list + a FAQ hint to disable thermald

Performance on the L480:
Core undervolted with -90 (rest is 0 atm) and 0x64b set as described above
You can run the cpu fan on 100% with thinkfan (which it would not do normally) but this is getting quite load and will allow you about 1W more then listed below.
1Core -> 3,6GHz 16W 90°C (don't know why the turbo is not kicking it higher)
2Cores -> 3,6GHz 25W 95°C (tiny throttle after a while to 22W)
3Cores -> 3,2GHz 25.5W 95°C
8Cores -> 2,9GHz 28W 95°C (after a while it is throttleing down a bit to 27W sometimes 26W)
TLP did not doing something to it here.

Uh nice finding! I'm on Gentoo so I have no packages that I didn't installed ;) But yes, I really forgot the existence of thermald... And I don't think you actually need it.
Yes please, add a new feature request so we can discuss about that and track the changes. I'll give a look to what you suggested but I think I can integrate those registers in the settings.

do you know whether it is safe to uninstall thermald on Ubuntu 18.04? if you did, were there any unexpected side effects? or do you have a recommendation how exactly to disable it permanently?

Just a quick comment: X1C6, with i7 8550u and Arch Linux: With TLP enabled on BAT there seems to ba a hard frequency limit. With TLP off the CPU is only thermally limited.

Well on battery that's quite the job of TLP. You can force tlp ac or configure some of the settings in the battery profile to be more aggressive on power (at the cost of battery life clearly). Check CPU_HWP_ON_BAT and ENERGY_PERF_POLICY_ON_BAT.

Great, thank you for the explanation. I guess TCC should be activated by
default (talking about a X1C 2108 in my case), but I will check to be on
the sure side. Do you maybe know whether this corresponds to the setting
"Adaptive Thermal Management" in the Thinkpdad BIOS?
On Sat, Aug 4, 2018 at 5:21 PM A. Binzxxxxxx<EMAIL_ADDRESS>wrote:

@wintermute42 https://github.com/wintermute42 I do not see a need to
have thermald at all for modern CPUs. Your laptop will run more hot then
before but this is what we want to get the CPU power. Having thermald might
be important for some older CPUs without proper thermal throttle (TCC for
intel) or thermal throttle disabled. It might also be usefull on a laptop
if configured correctly. However before turning thermald off you should
make sure your CPU has TCC activated since I am not sure if it will
throttle due to heat otherwise. I don't know why it should ever be off but
who knows. To check it you can run sudo rdmsr -d 0x1a0 -u -f 3:3 - if it
returns a 1 you are fine. Without TCC beeing enabled the temperature target
set by the script is ignored anyway - I think.
So I did not uninstall it till now i just disabled it by systemctl
disable thermald.service (you should also stop it).
@whnr https://github.com/whnr you can change the configuration of TLP
or turn it off but most people like to get more battery hours when they
travel instead of high performance.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/erpalma/lenovo-throttling-fix/issues/24#issuecomment-410456692,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJmEUpaPZC5eECt81FX123sb0ESuAFd8ks5uNbwTgaJpZM4VqiF2
.

Sorry I can not tell you what this option is. TCC should be on by default and always on from my point of view. This option however could be related or not.

Ok, thank you
A. Binzxxxxxx<EMAIL_ADDRESS>schrieb am Mo., 6. Aug. 2018,
09:05:

Sorry I can not tell you what this option is. TCC should be on by default
and always on from my point of view. This option however could be related
or not.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/erpalma/lenovo-throttling-fix/issues/24#issuecomment-410609033,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJmEUmdflz3L1beLGl57Q0jxtRHFaeB_ks5uN-qngaJpZM4VqiF2
.


swiper/css/swiper.min.css is missing - breaking linking for everyone using unpkg.com

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Swiper Version: EXACT RELEASE VERSION OR COMMIT HASH, HERE.

Live Link or JSFiddle/Codepen or website with isssue: PREFERABLY (IF YOU WANT YOUR ISSUE TO BE RESOLVED ASAP).

What you did
We have swiper deployed on numerous websites.
We reference like this and they are down:
https://unpkg.com/swiper/css/swiper.min.css
https://unpkg.com/swiper/js/swiper.min.js
getting started instructions on your site have been followed.
Expected Behavior
css is missing
Actual Behavior
file structure changed and is missing.
P.S. Remember, an issue is not the place to ask questions. You can use Stack Overflow
for that.
Before you open an issue, please check if a similar issue already exists or has been closed before.

https://github.com/nolimits4web/swiper/blob/master/CHANGELOG.md


⚠ Bofrost.es has degraded performance

In f6c0c31, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1479 ms

Resolved: Bofrost.es performance has improved in acf72ff after 6 minutes.


nixos: support systemd-veritysetup-generator

Description of changes

This adds support for using verity-protected root filesystems on NixOS, implemented by systemd-veritysetup-generator. This generator looks for verity partitions (e.g. as created by systemd-repart) and mounts them automatically. It acts as an alternative to the other generators supported at the moment. (Namely systemd-gpt-auto-generator and systemd-fstab-generator).
The tentative API looks as follows:
config.boot.initrd.systemd.root = "verity" # This option specifies how root should be mounted at all.
config.boot.initrd.systemd.verityRootHash = "..." # This option specifies the root hash of the verity partition, which systemd uses to identify the correct device to mount.

I'm not sure yet whether this API is good. I couldn't think of anything else you'd need to have configurability of yet, but I'm happy to get some feedback on this.
Closes #285254
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

@ofborg test verity-protected-root

This looks like a nice way into the right direction! Also thanks for writing a test for it :heart: .


Interop tests: Slave went offline during the build

https://grpc-testing.appspot.com/job/gRPC_interop_master/3389/console
+ tools/run_tests/run_interop_tests.py -l all -s all --cloud_to_prod --cloud_to_prod_auth --use_docker --http2_interop -t -j 12
Slave went offline during the build
ERROR: Connection was broken: java.io.IOException: Unexpected termination of the channel
	at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:50)
Caused by: java.io.EOFException
	at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2332)
	at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2801)
	at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:801)
	at java.io.ObjectInputStream.<init>(ObjectInputStream.java:299)
	at hudson.remoting.ObjectInputStreamEx.<init>(ObjectInputStreamEx.java:48)
	at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:34)
	at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)

Build step 'Execute shell' marked build as failure
ERROR: Build step failed with exception
java.lang.NullPointerException
	at com.michelin.cio.hudson.plugins.copytoslave.CopyToMasterNotifier.perform(CopyToMasterNotifier.java:91)
	at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45)
	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782)
	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723)
	at hudson.model.Build$BuildExecution.post2(Build.java:185)
	at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668)
	at hudson.model.Run.execute(Run.java:1763)
	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
	at hudson.model.ResourceController.execute(ResourceController.java:98)
	at hudson.model.Executor.run(Executor.java:410)
Build step 'Copy files back to the job's workspace on the master node' marked build as failure
ERROR: Step ‘Publish JUnit test result report’ failed: no workspace for gRPC_interop_master #3389
[htmlpublisher] Archiving HTML reports...
ERROR: Build step failed with exception
java.lang.NullPointerException
Build step 'Publish HTML reports' marked build as failure
Finished: FAILURE

Seen here too https://grpc-testing.appspot.com/job/gRPC_interop_master/3400/console

This is basically https://github.com/grpc/grpc/issues/5768 (I had to restart the worker manually to get it unstuck).
Leaving this issue open to prevent buildpony from filing new issues for the same problem.

Transient Jenkins failure. Let's close it.


Question: Why are Widgets not displayed?

I'm trying to run a basic UI according to layouts in the doc, but the Widgets are not displayed (just getting blank screen):
from time import sleep
from asciimatics.screen import ManagedScreen
from asciimatics.widgets import Frame, Text, TextBox, Layout, Label, Button, PopUpDialog, Widget

def run():
    with ManagedScreen() as screen:
        frame = Frame(screen, 80, 20, has_border=False)
        layout = Layout([100], fill_frame=True)
        frame.add_layout(layout)
        layout.add_widget(Text("Name:", "name"))
        layout.add_widget(Text("Address:", "address"))
        layout.add_widget(Text("Phone number:", "phone"))
        layout.add_widget(Text("Email address:", "email"))
        layout.add_widget(TextBox(
            Widget.FILL_FRAME, "Notes:", "notes", as_string=True, line_wrap=True))
        frame.fix()
        screen.refresh()
        sleep(10)
run()

What am I doing wrong here?

Do widgets work with ManagedScreen? or
Does Screen need to have a Scene?

Your Frame is a sub-class of Effect and so like all Effects needs to be played by the Screen.  Rather than calling screen.refresh() try calling screen.play(...) passing in the Scene that includes your Frame.  The sort of thing you need is in the sample code - e.g. here: https://github.com/peterbrittain/asciimatics/blob/c7accc93d3e9ead2337364f97d938340bbda1695/samples/forms.py#L224-L227

For the sake of completeness, here's my solution:
from time import sleep
from asciimatics.scene import Scene
from asciimatics.screen import Screen, ManagedScreen
from asciimatics.widgets import Frame, Text, TextBox, Layout, Label, Button, PopUpDialog, Widget

class FormFrame(Frame):
    def __init__(self, screen):
        super(FormFrame, self).__init__(screen,
            int(screen.height // 3),
            screen.width // 2,
            y=0,
            has_border=True,
            can_scroll=True,
            name="Form Frame")
        layout = Layout([100], fill_frame=True)
        self.add_layout(layout)
        layout.add_widget(Text("Name:", "name"))
        layout.add_widget(Text("Address:", "address"))
        layout.add_widget(Text("Phone number:", "phone"))
        layout.add_widget(Text("Email address:", "email"))
        layout.add_widget(TextBox(
            Widget.FILL_FRAME, "Notes:", "notes", as_string=True, line_wrap=True))
        self.fix()
        # screen.refresh()
        # sleep(10)

def run(screen, scene):
    scenes = [Scene([FormFrame(screen)], -1)]

    screen.play(scenes, stop_on_resize=True, start_scene=scene, allow_int=True)

last_scene = None
Screen.wrapper(run, catch_interrupt=False, arguments=[last_scene])


Api1000/ethernet network

Description
Api1000 Support for Ethernet Network
Issues Resolved
NA
Check List

[x] New functionality includes testing.

[x] All tests pass for go 1.11 + gofmt checks.

[x] New functionality has been documented in the README if applicable.

[x] New functionality has been thoroughly documented in the examples (please include helpful comments).

[x] Changes are documented in the CHANGELOG.

Merging Api1000/ethernet network resource