[Help]Configure Alchemical for testing

Hi Miguel,
sorry to write this kind of issue here, but since there are no discussions set, here I go. My issue is to find a correct way to set Alchemical object in both code and tests. Do you know resources/examples to configure properly Alchemical?
For my use case I set up configuration using Pydantic v1 model via environment variables. This is where I set the connection string.
config.py module
from pydantic import BaseSettings, PostgresDsn

class Configuration(BaseSettings):
    db_connection_string: PostgresDsn | str = 'sqlite+pysqlite:///:memory:'

    class Config:
        env_prefix = 'ar_'

And I have a models.py module where I declare the Alchemical object and database models
from .config import Configuration

db = Configuration().db_connection_string

class Job(db.Model):
    __tablename__ = 'jobs'

    id: Mapped[uuid.UUID] = mapped_column(Uuid, primary_key=True, default=uuid.uuid4)
    name: Mapped[str] = mapped_column(String(50))
   ...

And now in my conftest.py module (I'm using Pytest for tests), I tried to set an environment variable to configure the connection string differently
@pytest.fixture(autouse=True)
def db_session(monkeypatch, mocker) -> Session:
    """Creates and deletes a test database."""
    monkeypatch.setenv('ar_db_connection_string', 'sqlite+pysqlite:///:memory:')

    # ugly but necessary
    from project.models import db

    db.create_all()
    with db.Session() as session:
        yield session
    db.drop_all()

This does not work because the configuration object is set before entering the fixture (I saw it with some breakpoints). I have no clue how to organize it differently. If you have the slightest suggestion, I'm interested.

You can create the Alchemical instance without any arguments, then call initialize() with your configuration later, after you have a configuration object ready.
db = Alchemical()

def init_db():
    db.initialize(url="...")

class User(db.Model):
    # ...

With this solution you are delaying the initialization, so this gives you time to prepare your configuration.

Thanks Miguel, I use the initialize method to change the URL in my fixture and it works pretty well now.


Update RyuJIT

Get JitInterface changes that accumulated over the last weeks out of the
way in preparation for dotnet/coreclr#10663.

The min OSX version supported by CoreCLR is 10.12 now, and so the nuget RIDs have to be updated accordingly.
We may also need to fix Jenkins config to run on OSX 10.12.

The min OSX version supported by CoreCLR is 10.12 now, and so the nuget paths have to be updated accordingly.

Welp, so I blindly replaced references to 10.10 in the source tree with 10.12 and it blew up in my face because we don't have an ObjectWriter package for 10.12. Then I monkeyed with it for another hour but to no avail. Do we need ObjectWriter package for 10.12?
@sergiy-k This is going to block lighting up the delegate work.

Do we need ObjectWriter package for 10.12?

The ObjectWriter package for 10.10 should still work fine.

Adding <ObjectWriterNuPkgRid Condition="'$(OSGroup)'=='OSX'">osx.10.10-x64</ObjectWriterNuPkgRid> next to similar line for Ubuntu in packages.targets may do the trick.

OK, what I did is very much not pretty, but it seems to work on my Mac. I'll see if I need to bump OSX version in the CI too.
We keep conflating the RID for the RyuJIT package we need here with the RIDs of e.g. the package of CoreCLR that we use to run unit tests as part of the build. The strategy where I just tried to replace 10.10 with 10.12 everywhere only lead to suffering. Having to git clean -dfx every time I changed anything because NuGet is incapable of incremental rebuilds didn't help. I miss checked in binaries.

@dotnet-bot test OSX Debug and CoreCLR tests  please
@dotnet-bot test OSX Release please

Let's try again.
@dotnet-bot test OSX Debug and CoreCLR tests
@dotnet-bot test OSX Release

I have verified that this change works correctly on my computer.

Also passed validation on my Mac. I'll merge this.


Hirb::Util.detect_terminal_size should prefer tputs/stty over environment variables

If the window is resized in the middle of a session, and the shell (e.g. zsh) has set COLUMNS and LINES, then calling Hirb::View.resize doesn't correctly detect the new terminal size, even though stty size does return the new size.
Hirb::Util.detect_terminal_size should only fall back on COLUMNS and LINES if it cannot detect the size using tputs or stty.

Thanks for reporting your issue! This is one of my 15 active issues. Use that link to check how soon your issue will be answered. Don't forget to check your issue against this project's CONTRIBUTING.md. Cheers.

hirb expects ENV vars to be set explicitly by the user and is a way to override any automated way of setting size e.g. stty. I'm using zsh on OSX and my $COLUMNS and $LINES aren't being set automatically. I'd recommend reconfiguring zsh to not auto-set those vars when you resize. Alternatively, just nil out those ENVs: ENV['COLUMNS'] = ENV['LINES'] = nil after a resize


Defer import in cupy/_environment.py

This was my oversight in #4027. I didn't notice the file header says "This file must not depend on any other CuPy modules."

Jenkins, test this please

Jenkins CI test (for commit eea42e71b6f89582c3ccd6292e03d70582744a51, target branch master) failed with status FAILURE.

Jenkins, test this please

Jenkins CI test (for commit eea42e71b6f89582c3ccd6292e03d70582744a51, target branch master) succeeded!

The previous CI failure was simply due to timeout, which was fixed earlier in https://github.com/chainer/chainer-test/pull/610.


Update Initialize-Environment.ps1

Changed to prevent the init procedure from crashing in a "initializationscript" on Start-Job in Powershell. The InitializationScript seems to ignore the "errorAction" setting and terminates the job when the Variable XenServer_Environment_Initialized does not exist.
I found this way of checking for the variable on stackoverflow (http://stackoverflow.com/questions/3159949/in-powershell-how-do-i-test-whether-or-not-a-specific-variable-exists-in-global). Neat thing on this is that it will not generate a exception when the variable is not set so it should work in an InitializationScript environment as well

Thank you for your contribution, fiesch. It makes sense, but could you reformat it so as not to get extra diffs to the copyright statement? (I suspect it must be just line-ending changes). Thank you.

Hello Stephen - I made changes to the pull request as per your note, I don't really know where the Copyright  changes came from.

Perfect, thanks. Merging it now.


Chest / loot box icon

Describe the requested icon
The requested icon would be a chest icon that could also work as a loot box icon. The best would be from the front, I think it's easier to understand.
Screenshots

Additional context
I'd personally use it in my video games' store website for purchasable items such as loot boxes that could be represented with a chest. That'd be also handy in a lot of situations like an inventory etc...

I would love to see a chest icon as well :)
Here are some additional examples if this helps!
https://react-icons.github.io/react-icons/search/#q=chest
https://fontawesome.com/icons/treasure-chest?f=sharp&s=regular

It's coming 👍


Make design responsive

Not high priority, but would be nice to have a completely responsive design.

For the most part this is now fixed, will introduce more work as the project continues.


Problems processing multiple urls in the same component

Hi,
Thanks for your work on the plugin : )
I'm trying to process a bunch of "product" images and came up with this function:
  function imageProps(i, imgNumber) {
    return useNextSanityImage(
        sanityClient,
        products[i].[imgNumber]
      )
  }

however when I try to call it more than once in the component I get this error:
Unhandled Runtime Error
Error: Rendered more hooks than during the previous render.
Source

components/ProductSliders.js (11:8) @ imageProps

   9 | function imageProps(i, imgNumber) {
  10 |   return useNextSanityImage(
> 11 |       sanityClient,
     |      ^
  12 |       products[i].[imgNumber]
  13 |     )
  14 | }

Your help much appreciated.

I'm guessing you're breaking the rules of hooks by rendering the hook in a loop (judging from the index you're passing): https://reactjs.org/docs/hooks-rules.html#only-call-hooks-at-the-top-level.

Don’t call Hooks inside loops, conditions, or nested functions. Instead, always use Hooks at the top level of your React function, before any early returns.


Fix keystone process check threshold

Keystone related uwsgi process is larger than 10, no need to increase it.

retest


[SPARK-29885] [CORE] Improve the exception message when reading the daemon port

What changes were proposed in this pull request?
In production environment, my PySpark application occurs an exception and it's message as below:
19/10/28 16:15:03 ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0)
org.apache.spark.SparkException: No port number in pyspark.daemon's stdout
	at org.apache.spark.api.python.PythonWorkerFactory.startDaemon(PythonWorkerFactory.scala:204)
	at org.apache.spark.api.python.PythonWorkerFactory.createThroughDaemon(PythonWorkerFactory.scala:122)
	at org.apache.spark.api.python.PythonWorkerFactory.create(PythonWorkerFactory.scala:95)
	at org.apache.spark.SparkEnv.createPythonWorker(SparkEnv.scala:117)
	at org.apache.spark.api.python.BasePythonRunner.compute(PythonRunner.scala:108)
	at org.apache.spark.api.python.PythonRDD.compute(PythonRDD.scala:65)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
	at org.apache.spark.rdd.RDD$$anonfun$7.apply(RDD.scala:337)
	at org.apache.spark.rdd.RDD$$anonfun$7.apply(RDD.scala:335)
	at org.apache.spark.storage.BlockManager$$anonfun$doPutIterator$1.apply(BlockManager.scala:1182)
	at org.apache.spark.storage.BlockManager$$anonfun$doPutIterator$1.apply(BlockManager.scala:1156)
	at org.apache.spark.storage.BlockManager.doPut(BlockManager.scala:1091)
	at org.apache.spark.storage.BlockManager.doPutIterator(BlockManager.scala:1156)
	at org.apache.spark.storage.BlockManager.getOrElseUpdate(BlockManager.scala:882)
	at org.apache.spark.rdd.RDD.getOrCompute(RDD.scala:335)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:286)
	at org.apache.spark.api.python.PythonRDD.compute(PythonRDD.scala:65)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:52)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:52)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)
	at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
	at org.apache.spark.scheduler.Task.run(Task.scala:121)
	at org.apache.spark.executor.Executor$TaskRunner$$anonfun$10.apply(Executor.scala:408)
	at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1360)
	at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:414)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

At first, I think a physical node has many ports are occupied by a large number of processes.
But I found the total number of ports in use is only 671.
[yarn@r1115 ~]$ netstat -a | wc -l 671
671

I  checked the code of PythonWorkerFactory in line 204 and found:
 daemon = pb.start()
 val in = new DataInputStream(daemon.getInputStream)
 try {
 daemonPort = in.readInt()
 } catch {
 case _: EOFException =>
 throw new SparkException(s"No port number in $daemonModule's stdout")
 }

I added some code here:
logError("Meet EOFException, daemon is alive: ${daemon.isAlive()}")
logError("Exit value: ${daemon.exitValue()}")

Then I recurrent the exception and it's message as below:
19/10/28 16:15:03 ERROR PythonWorkerFactory: Meet EOFException, daemon is alive: false
19/10/28 16:15:03 ERROR PythonWorkerFactory: Exit value: 139
19/10/28 16:15:03 ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0)
org.apache.spark.SparkException: No port number in pyspark.daemon's stdout
 at org.apache.spark.api.python.PythonWorkerFactory.startDaemon(PythonWorkerFactory.scala:206)
 at org.apache.spark.api.python.PythonWorkerFactory.createThroughDaemon(PythonWorkerFactory.scala:122)
 at org.apache.spark.api.python.PythonWorkerFactory.create(PythonWorkerFactory.scala:95)
 at org.apache.spark.SparkEnv.createPythonWorker(SparkEnv.scala:117)
 at org.apache.spark.api.python.BasePythonRunner.compute(PythonRunner.scala:108)
 at org.apache.spark.api.python.PythonRDD.compute(PythonRDD.scala:65)
 at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
 at org.apache.spark.rdd.RDD$$anonfun$7.apply(RDD.scala:337)
 at org.apache.spark.rdd.RDD$$anonfun$7.apply(RDD.scala:335)
 at org.apache.spark.storage.BlockManager$$anonfun$doPutIterator$1.apply(BlockManager.scala:1182)
 at org.apache.spark.storage.BlockManager$$anonfun$doPutIterator$1.apply(BlockManager.scala:1156)
 at org.apache.spark.storage.BlockManager.doPut(BlockManager.scala:1091)
 at org.apache.spark.storage.BlockManager.doPutIterator(BlockManager.scala:1156)
 at org.apache.spark.storage.BlockManager.getOrElseUpdate(BlockManager.scala:882)
 at org.apache.spark.rdd.RDD.getOrCompute(RDD.scala:335)
 at org.apache.spark.rdd.RDD.iterator(RDD.scala:286)
 at org.apache.spark.api.python.PythonRDD.compute(PythonRDD.scala:65)
 at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
 at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)
 at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:52)
 at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
 at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)
 at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:52)
 at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
 at org.apache.spark.rdd.RDD.iterator(RDD.scala:288)
 at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
 at org.apache.spark.scheduler.Task.run(Task.scala:121)
 at org.apache.spark.executor.Executor$TaskRunner$$anonfun$10.apply(Executor.scala:408)
 at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1360)
 at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:414)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
 at java.lang.Thread.run(Thread.java:745)

I think the exception message has caused me a lot of confusion.
This PR will add meaningful log for exception information.
Why are the changes needed?
In order to clarify the exception and try three times default.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Exists UT.

Test build #113746 has started for PR 26510 at commit 900bd0a.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/18624/
Test PASSed.

Test build #113746 has finished for PR 26510 at commit 900bd0a.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/113746/
Test PASSed.

Test build #114187 has started for PR 26510 at commit ba63574.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/19038/
Test PASSed.

Test build #114187 has finished for PR 26510 at commit ba63574.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/114187/
Test FAILed.

Retest this please.

Test build #114199 has started for PR 26510 at commit ba63574.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/19050/
Test PASSed.

Test build #114199 has finished for PR 26510 at commit ba63574.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/114199/
Test PASSed.

Merged to master.

@HyukjinKwon @jiangxb1987 Thanks for your review.


More panics on decoding still images

It seems that the AFL seeds for the WebP format are overly tuned to the libwebp implementation, and are not a good starting point for fuzzing other decoders.
When seeded with the smallest real-world images that I scraped from the web, the fuzzer still finds panics almost instantly:
smallest_scraped_webp.tar.gz
Sample image triggering a panic: crash-70d04adad08d65334cc6e947843ae382420aef78.webp.gz
which causes
thread '<unnamed>' panicked at image-webp/src/vp8.rs:851:14:
chunk size must be non-zero

This crash is triggered by having a lossy image with width=0. Since zeroing out two bytes from the image header seems like the sort of thing the fuzzer should have been able to find pretty easily, I wonder if there just weren't any lossy images in the AFL seed corpus?

There's more panics if you keep fuzzing with these seeds. For example, this file:
crash-9ef3724ec5ce9543886897742c95cf6c497b87f7.webp.gz
triggers this panic:
thread '<unnamed>' panicked at image-webp/src/lossless.rs:645:9:
assertion failed: num <= 16

Do you want me to file separate issues for these?

That specific crash should be fixed by #35, but please do open issues if you find other crashes.


ECMAScript 6 Support

Is it possible to implement the use of ES6 style syntax?
It offers a lot of benefits and methods that will open up faster more fluid code development.
Including

Default Parameters
Multi line strings
Arrow Functions
Freaking Object Destructing and Array Matching
Block scoped Constructs let and const
Typed Arrays
Classes
Template Literals
Modules (However I really doubt that this is a note worthy feature for oxide plugin development lol unless used with namespace?)

List of the current finalized ES6 Features: http://es6-features.org/
I just thought it would be a great implementation to consider with the benefits to both performance and flow ES6 brings.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/31176094-ecmascript-6-support?utm_campaign=plugin&utm_content=tracker%2F6855523&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F6855523&utm_medium=issues&utm_source=github).

The problem is that JInt which the js extension is based on is a 5.1 one. unless you're able to provide a interpreter that builds onto es6 this won't be possible...

Ah, shame we can't use modules or I'd throw babel into the mix for ideas. Oh well, maybe if I can learn more C# I would look into building an interpreter.


UISAUTCOMP-38 unpin @rehooks/local-storage

@rehooks/local-storage is no longer broken so we can once again depend on the latest version of it, allowing us to remove resolutions entries for it that are scattered about.
Attn @BogdanDenis I don't have commit privileges in this repository so please merge this if it looks good to you. Thanks!
Refs UISAUTCOMP-38

It seems I misunderstood the fork merging process and created a copy of this PR when I shouldn't have...and now this PR passes too
Copy: https://github.com/folio-org/stripes-authority-components/pull/63

No worries, @BogdanDenis; the whole PRs-from-forks things is messy. IIUC, GitHub recognizes when the commit hashes match from PRs based on different branches and both "go green". At that point, it really doesn't matter which one you merge since both contain the same commit. Six of one, half-dozen of another. 🤷


Digital clock 如何每秒更新时间呢？

TimelineProvider.getTimeline对更新频率，entries数组的长度都有显示。
请问：如何每秒更新时间呢？
非常感谢🙏

Hi @linghugoogle
If you'd like me to answer the question please ask in English as unfortunately I don't speak Chinese.
If you're asking how to refresh the widget every second then, for now, it's not possible. Please refer to Keeping a widget up to date.


emissions : Unit tests for reward distribution functions

Add unit tests for the following functions
GetBlockRewardComponents
GetBondFactor
GetDurationFactor
GetReservesFactor

This has been completed


Update app.json: Owner Ids was spelt wrong.

Thanks for noticing. I won't merge it yet tho, that would require to change GenerateJson/GenerateJson.dll that turns variables to json config for nadeko, and currently I'm lazy for that.


Use private unicode chars instead

Was probably good advice to use characters that have no other meaning by definition as the placeholders.


syntax of  component placement without component tag incomplete🐛

The following code allows all but the commented component to compile. In other words, components parameters can be set without using parameter names when using the component tag, but not when omitting it.

component CTest:
  id: int = 3
  message: string = ""
  `template`:
    tDiv: "template: {self.id}"

appRoutes("ROOT"):
  "/":
    tDiv:
      component CTest(7)
      component CTest(id = 17)
      CTest()
      #CTest(0)
      CTest(id=0)

Works except that now CompX(): shouldBeSlot binds the colon expression as an arg to the proc, not the attached slot.
Again, the commented statements fail to compile.

component CTest:
  id: int = 3
  message: string = ""
  `template`:
    tDiv: "template: {self.id}"
    tDiv: slot

appRoutes("ROOT"):
  "/":
    tDiv:
      component CTest(7): "ok"
      component CTest(id = 17): "ok"
      #CTest(): "ok"
      #CTest(0): "ok"
      CTest(id=0): "ok"


Unexpected dimming time

Thanks for your module, it is very useful for me.
However I encountered some strange problem, and I would like to know whether you could help me.
While deploying this module, in the first step I have tried:brightTime: 1320, dimTime: 1315. In this 5 minutes little experiment it works perfect and can turn off and on my display as expected.
Then I changed the configuration to brightTime: 630, dimTime: 2330, transitionDuration: 0, maxDim:1, for a more practical use.
But the screen started to dim at around 20:00 instead of 23:30, also the screen was not totally black. (My time zone is UTC+8)
Is there anything wrong I did during the configurations? Thanks.

My bad, I dismissed the default setting.


feat: Add runtime settings page and eject

Description
Adds a new settings page that controls the settings related to using a custom runtime.
Still lots to do -- see #2470
Task Item
Closes #2470
Related to #2450
Screenshots
Progress so far:

merged master apr 13

all comments addressed. Thanks a lot @a-b-r-o-w-n


[RC] Allow react-node inLabel

[RC] Allow react-node inLabel
Changes :hammer_and_wrench:
react-components

[RC] Allow react-node inLabel

Not necessary


[Spec Deviation] bitwise-xor-expr result should be of type int

Description:
The 2019r3 spec says for "Binary bitwise expression"
"The static type of both operands must be a subtype of int. The static type of the result is as follows:

for AND, if the type of one operand is a subtype of byte, then the result has type byte; otherwise, the result has type int;
for OR, if the type of both operands have a type that is a subtype of byte, then the result has type byte; otherwise, the result has type int;
for XOR, the result has type int."

Steps to reproduce:
But the following does not fail
import ballerina/io;

public function main(string... args) {
    byte i = 2;
    byte j = 6;

    byte k = i ^ j; // should fail according to the spec
    io:println(k);
}

Affected Versions:
1.0.0-beta-SNAPSHOT - 15th August build

The current implementation seems to be correct, see https://github.com/ballerina-platform/ballerina-spec/issues/315


Create UML Diagrams

Make a bunch of glorious UML diagrams for new classes like FileMaker and its subclasses. They'll need to start interacting in a sane manner, and drawing it out is part of that.

https://www.gliffy.com/go/html5/launch?app=1b5094b0-6042-11e2-bcfd-0800200c9a66&templateId=4218693

Some exist now, though they are barebones. Future issues will be to make specific subsections of the program.


Verify brew installations on/before release

What would you like to be added:
Do one of the following:

Add post-release automation that attempts to install syft via our brew tap and verify the installation + version.
Add a goreleaser brews.test section to test if an installation worked before release (preferred if my understanding of the feature is correct).

Why is this needed:
We recently ran into a problem with goreleaser where the checksums of the asset referenced in the brew formula was wrong, preventing installations. The first indication of a problem was when users begin to report problems in slack and issues. It would be ideal to prevent this by testing before the release or at the very least get notified on slack after a release if a validation fails.
Related to #519

It would great to have it tested/verified in a CI box running macOS, or maybe linux since Homebrew supports linux


Retrieval of vessel list times out on simulated 8Kb/s connection

It is possible to simulate lower connection band with in Chrome Version 46.0.2490.86. Initial trials with this feature shows that retrieval of the vessel list times out upon login due to many concurrent requests all taking a long time.

Workaround applied in release 2.5.3: timeout increased to 60 seconds.

timeout increased on master branch with commit message 'Embryo#55'


Maximum sessions

Hi. I recently sign-in with a number to 7 clients and I can't get authorization code for the eighth. Is this Telegram's policy?

There is no restriction on the number of active clients, but accounts may be banned or denied in authorization if they are suspected to be autoregistered.


Add validation to the remaining service scopes

This PR makes service registries validate the scope of services registered in them when this scope is defined on the service itself. It adds the validation to the remaining scopes: Global, UserHome, BuildSession, Gradle and Project.
It also makes the @ServiceScope annotation accept multiple scopes. This is required for some services that override its instance from a parent scope. It forces the service interface/class to be explicit about all the scopes.
This is a follow-up to https://github.com/gradle/gradle/pull/26786

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

@bot-gradle merge

The merge queue build has started. Click here to see all failures if any.


implement pandas backend

unlikely to be faster than numpy, which was slower than arrow (even for records!) so going to close this.


Update dependency: deps/kevm_release

Requires an update corresponding to the change in HASKELL_BOOSTER performed in https://github.com/runtimeverification/evm-semantics/pull/2144.

https://github.com/runtimeverification/kontrol/actions/runs/7058406292/job/19214014735#step:6:768
Looks like the Booster still sends an error response on SMT failure. @geo2a, is this expected? (This is on K v6.1.34.)

@palinatolmach let's see the CI status at the end. Maybe the SMT error is caused by flakiness?

shall we merge it if CI passes

Yes, let's merge it. I added the automerge label.


java.lang.ClassCastException

Hi ,
Am getting java.lang.ClassCastException while fetching record based on filter
public Person findPerson(String last_name) { 		return Person.findFirst("last_name = ?", last_name); 	}
only its working if i will use getX("attribute method") can anyone help me

@basahota , please do not file these as issues on Github. Issues are real bugs, and new features. What you have are questions, not issues. Follow instructions: http://javalite.io/support.
Do not forget to add more information to SO. Closing this.

Yeah sorry for that i will make a separate thread on stackOverFlow


feat(rpc): create wrappers for jsonrpsee clients

An alternative way to fix #100 that avoids re-exporting jsonrpsee directly

In this case, IMO we should have only Client and internally choose which one to use based on the uri.


fix: Add specific export for lite.js. Issue #291.

fix: Add specific export for lite.js. Issue #291.

Skipped. See Issue #291.


How to run demo

It would be nice with a simple description how to run a demo from command line after clone and gradle build.

Understand... I'll see if I can get something up soon.

Super! Thanks!

Ditto - i do not see how to get up and running after checking out the code .. Dont see the demo package alluded to in main html docs...


As a developer, I need to change the Inspector graphic from timeline chart to stacked bar chart

dito in the title.
-and hide the total
@jblom: Eduardo just did this, also with Mari's check, it's a great improvement for the inspector, shall I move it to Review/QA?

@lilimelgar sure

@jblom @lilimelgar
Changes done to graph in labo-components graph:
task/#221-modify-graph-for-inspect-tool
Now instead of dot we have a stack bar graph as requested.

@lilimelgar @avlisodraude I've merged the code with master. Looks much nicer than the line chart I think. A minor thing: maybe the lines can be a bit thicker? Now it's a bit hard to see what's missing & what is present


"mkdir data/: permission denied" while starting alert manager service in centos7

Getting "mkdir data/: permission denied" for alertmanger while starting the service, but has normal start if called with binary:
$ /usr/local/bin/alertmanager --config.file="/etc/prometheus/alertmanager.yml"
level=info ts=2018-04-26T16:11:37.801802604Z caller=main.go:136 msg="Starting Alertmanager" version="(version=0.14.0, branch=HEAD, revision=30af4d051b37ce817ea7e35b56c57a0e2ec9dbb0)"
level=info ts=2018-04-26T16:11:37.801882941Z caller=main.go:137 build_context="(go=go1.9.2, user=root@37b6a49ebba9, date=20180213-08:16:42)"
level=info ts=2018-04-26T16:11:37.802950788Z caller=main.go:275 msg="Loading configuration file" file=/etc/prometheus/alertmanager.yml
level=info ts=2018-04-26T16:11:37.808208271Z caller=main.go:350 msg=Listening address=:9093
Here's the error log:
Apr 26 12:04:40 host-I12931 alertmanager[15761]: level=info ts=2018-04-26T16:04:40.100186828Z caller=main.go:136 msg="Starting Alertmanager" version="(version=0.14.0, branch=HEAD, revision=30af4d051b37ce817ea7e35b56c57a0e2ec9dbb0)"
Apr 26 12:04:40 host-I12931 alertmanager[15761]: level=info ts=2018-04-26T16:04:40.100314849Z caller=main.go:137 build_context="(go=go1.9.2, user=root@37b6a49ebba9, date=20180213-08:16:42)"
Apr 26 12:04:40 host-I12931 alertmanager[15761]: level=error ts=2018-04-26T16:04:40.100351694Z caller=main.go:141 msg="Unable to create data directory" err="mkdir data/: permission denied"
Apr 26 12:04:40 host-I12931 systemd[1]: alertmanager.service: main process exited, code=exited, status=1/FAILURE
Apr 26 12:04:40 host-I12931 systemd[1]: Unit alertmanager.service entered failed state.
Apr 26 12:04:40 host-I12931 systemd[1]: alertmanager.service failed.
Apr 26 12:04:40 host-I12931 systemd[1]: alertmanager.service holdoff time over, scheduling restart.
Apr 26 12:04:40 host-I12931 systemd[1]: start request repeated too quickly for alertmanager.service
-- Subject: Unit alertmanager.service has failed
-- Unit alertmanager.service has failed.
Apr 26 12:04:40 host-I12931 systemd[1]: Unit alertmanager.service entered failed state.
Apr 26 12:04:40 host-I12931 systemd[1]: alertmanager.service failed.
Versions:
alertmanager, version 0.14.0
prometheus, version 2.2.1
systemd service file :
[Unit]
Description=Prometheus Alert Manager service
After=network.target auditd.service
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/bin/alertmanager --config.file="/etc/prometheus/alertmanager.yml"
Restart=always
[Install]
WantedBy=default.target
alertmanager.yml :
global:
smtp_smarthost: 'email-smtp.us-west-2.amazonaws.com:587'
smtp_from: 'Alertmanager<EMAIL_ADDRESS>smtp_auth_username: 'FILLMEIN'
smtp_auth_password: 'FILLMEIN'
templates:

'/etc/alertmanager/template/*.tmpl'

route:
receiver: 'team-X-mails'
receivers:

name: 'team-X-mails'
email_configs:

to<EMAIL_ADDRESS>

This is a problem with your systemd unit service that doesn't set the working directory. You might want to look at https://www.freedesktop.org/software/systemd/man/systemd.exec.html#WorkingDirectory=
It makes more sense to ask questions like this on the prometheus-users mailing list rather than in a GitHub issue. On the mailing list, more people are available to potentially respond to your question, and the whole community can benefit from the answers provided.


[BUG] Installing rancher on k3s using traefik as ingress when setting tls: external in helm values fails to handle requests correctly

Rancher Server Setup

Rancher version: v2.7-head
Installation option (Docker install/Helm Chart): helm

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc): k3s

Proxy/Cert Details:

Information about the Cluster

Kubernetes version: 1.26
Cluster Type (Local/Downstream): local

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider):

User Information

What is the role of the user logged in? (Admin/Cluster Owner/Cluster Member/Project Owner/Project Member/Custom)

If custom, define the set of permissions:
N/A

Describe the bug
When attempting to reproduce an issue with websockets not working when using traefik as the ingress controller it was noticed that by default it seems that traefik doesn't handle the rancher ingress quite correctly when running with tls: external e.g. terminating TLS somewhere else and then forwarding the traffic into traefik over the http port.
To Reproduce

Spin up a k3s cluster somewhere (I used k3d as well as running k3s on a VM), default install so let traefik spin up. Grab the port from the load balancer svc.
Forward a port with ssl termination to the k3s instance, I tried just using ngrok http xxxx and a ssh -R solution with another reverse proxy (caddy) in front to terminate ssl.
helm install rancher rancher-latest/rancher --namespace cattle-system --create-namespace --set tls=external --set hostname=<hostname here>
After the pods spin up, navigate to the host and get an "error: too many redirects" in chrome/firefox/cURL.

Network Tab shows it's just returning a 302 for the exact same URL that was requested. Almost like the x-forwarded-for headers aren't getting set correctly - but I wasn't able to find where the redirect itself was happening within rancher to check for sure.

To prove this isn't just traefik and it is indeed rancher I spun up a few different pods with simple ingress' like so:

kubectl create deployment whoami --image traefik/whoami
kubectl create svc clusterip whoami --tcp 80
kubectl create ingress --class traefik --rule="domain.com/=whoami:80" whoami
Have ngrok/revproxy pointing at port 80 of ingress
Navigate to the domain
????
Works just fine!

Result
302 loop until terminated by browser
Expected Result
redirected to dashboard like normal
Screenshots
n/a
Additional context
n/a

Same problem

I'm having the same issue after installing the cert-manager update.
Upgraded Rancher and problem emerged. I could reach the url without issue before the upgrade.

I had this issue when deploying on k3s 1.26 and using an external HAproxy load balancer to handle SSL termination. Here is the fix that worked for me -
Edit this file -
Under the spec > valuesContent: |- section, add the following
`additionalArguments:

"--entryPoints.web.forwardedHeaders.insecure"`
Wait for the cluster to update the traefik service and it should now work.

Original answer found here - https://github.com/rancher/rancher/issues/31071#issuecomment-1125936620

I spent two days debugging this issue and the solution works. Thanks a lot, @josh383451.  k3s v1.26.9 and rancher installed with --set tls=external. Was getting too many redirects. Please, update the documentation of rancher installation. This is so frustrating.

After few weeks Traefik was redeployed and the config was lost. The correct way of adding the config is mentioned here: https://github.com/k3s-io/k3s/issues/8883#issuecomment-1815021251


feat: add implementation of key partition

Which issue does this PR close?
https://github.com/CeresDB/ceresdb/issues/492
Rationale for this change
Support the use of partition key to create partition tables.
CREATE TABLE `demo` (`name` string TAG, `value` double NOT NULL, `t` timestamp NOT NULL, TIMESTAMP KEY(t)) PARTITION BY KEY(name) PARTITIONS 2 ENGINE=Analytic with (enable_ttl="false")

What changes are included in this PR?

Add key partition parser.
Add pb definition of KeyPartition to persist partition info.

Are there any user-facing changes?
Users could create partition table by key partition sql.
How does this change test

In favor of #506


Add custom wheel event handler and other props

Adds support for custom wheel event handling and other terminal functionalities in the XTerm component.

Implements the customWheelEventHandler prop in the XTermProps interface with a docstring, allowing users to attach a custom wheel event handler to the terminal.
Adds props for linkProvider, characterJoiner, deregisterCharacterJoiner, registerMarker, and registerDecoration in the XTermProps interface, each with appropriate docstrings. These props enable users to register custom handlers and providers for various terminal functionalities.
Processes the customWheelEventHandler in the XTerm component constructor, attaching it to the terminal instance if provided.
Includes placeholders and docstrings for handling linkProvider, characterJoiner, deregisterCharacterJoiner, registerMarker, and registerDecoration props, indicating an intention to implement these functionalities in the future.

For more details, open the Copilot Workspace session.

Only the first commit was done by GitHub Copilot Workspace. Either it's not very clever or I don't know how to use it.


Hint not persist

Hi,
I've followed the instruction but the hint not show properly.
It overlapped an truncated.
((12)-3)--456-

this is the layout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:mask="http://schemas.android.com/apk/res-auto"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingTop="@dimen/form_element_spacing"
    android:orientation="vertical">

    <br.com.sapereaude.maskedEditText.MaskedEditText
        android:id="@+id/met_phone"
        android:layout_width="match_parent"
        android:layout_height="@dimen/form_element_height"
        android:inputType="phone"
        style="@style/text_view_form"
        mask:allowed_chars="1234567890"
        mask:mask="(###)-###-####"
        android:hint="(123)-456-7890"
        app:keep_hint="true"
        />
</LinearLayout>

Thank you

Hi, Sorry, I've fixed the problem, the hint should be plain text. You missed it in the readme.md
<br.com.sapereaude.maskedEditText.MaskedEditText
        android:id="@+id/met_phone"
        android:layout_width="match_parent"
        android:layout_height="@dimen/form_element_height"
        android:inputType="phone"
        style="@style/text_view_form"
        mask:allowed_chars="1234567890"
        mask:mask="(###)-###-####"
        app:keep_hint="true"
        android:hint="1234567890"
        />

Thanks for the library :D

Hi, @dashracer ! :-)
Sorry, I've received the email notification only now :-) Honestly, I didn't get your problem completely. Did you try to use formatted string?
How do you think, what should I add to README.md to avoid this misunderstanding in the future?

I am lost because of my hint is not formatting properly in the view.
My hint     :<PHONE_NUMBER>
Displayed :  ((12)-3)--456-
After that I found that I just need to type plain number on hint so the library will reformat the hint according to the pattern.
:D

#7


Add support for other architecture.

Hi,
When attempting to compile for an ESP32, I encounter the following error message:
          Error: Linker /home/alix_anneraud/test/.embuild/espressif/tools/xtensa-esp32-elf/esp-12.2.0_20230208/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc failed: exit status: 1
          STDERR OUTPUT:
          /home/alix_anneraud/test/.embuild/espressif/tools/xtensa-esp32-elf/esp-12.2.0_20230208/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/12.2.0/../../../../xtensa-esp32-elf/bin/ld: /home/alix_anneraud/test/target/xtensa-esp32-espidf/debug/deps/libwamr_sys-efb1192bc37ea73f.rlib: error adding symbols: file format not recognized
          collect2: error: ld returned 1 exit status

It's expected because WAMR isn't compiled for the ESP-IDF.
Is it feasible to add a feature flags or stuff like that to change the compilation option of WAMR ?
Thank you.

fixed by #23. I guess we can close it now.


Change URLs to new Github URL

Documentation, code, etc, needs to be updated.
https://github.com/CSC-IT-Center-for-Science/fgci-ansible
has become
https://github.com/CSCfi/fgci-ansible

requirements.yml in fgci-ansible changed in https://github.com/CSCfi/fgci-ansible/commit/7e231b2c47661ba30351d847dad041263a34f045
many places to go

Another in #198 . Marking this as closed now.


All players have no permissions.    Including the OP

All players have no permissions.    Including the OP。
The plug-in version：LuckPerms-Sponge-4.3.9.jar
SPONGE Server version：SPONGE1.12.2-2705-7.1.0-BETA-3361

OP gets disabled by Sponge as soon as there’s a permission plugin.
And well, you need to add permissions. By default no one has any permissions.
Basic usage can be found on the wiki on the Usage page.

Is that what you're talking about

I found the position you mentioned, and I will try it immediately. I'm very sorry to disturb you


As cubes

builiding on #1934 with some tweaks and a new test
I would like an entry in the what's new and an entry in the user guide before it's merged

I think this is looking in reasonable shape now
ping:
@cpelley @jkettleb @ehogan @rhattersley @pelson
all comments and feedback gratefully received

Looks like a great addition @marqh, any reason why you extended #1934 to grib and not fieldsfiles?

@marqh I just had a quick play and it works beautifully for me; my filtering code looks a lot clearer and I don't need to use callbacks any more. Nice work! :smile:

Looks like a great addition @marqh, any reason why you extended #1934 to grib and not fieldsfiles?

You can use this with Fields Files.  The fields file loader is set up to return an iterator of PPField instances
https://github.com/SciTools/iris/blob/master/lib/iris/fileformats/ff.py#L431
https://github.com/SciTools/iris/blob/master/lib/iris/fileformats/ff.py#L452
The what's new entry states
"The ability to pass file format object lists into the rules based load pipeline, as used for GRIB, Fields Files and PP has been added."

Ah thanks Mark, I had missed that

I don't need to use callbacks any more.

I was mistaken; I do still need to use callbacks. Is there any chance as_cubes can be updated to handle callbacks?

I was mistaken; I do still need to use callbacks. Is there any chance as_cubes can be updated to handle callbacks?

Why not simply filter/modify the iterator of cubes that as_cubes returns? (functionally achieving the same thing as a callback).
The only thing that I can think of that could be a problem is if you have a performance oriented issue in having to iterate through these cubes.  Is that the case?
Either way, it might be good to get additional context on what you are trying to do :)

Why not simply filter/modify the iterator of cubes that as_cubes returns? (functionally achieving the same thing as a callback).

a callback has a newly manufactured cube and the field it came from in scope at the same time; somewhat different
@ehogan
I'll have a look at the implementation and see if there is a logical space for a call back within this pipeline

@ehogan a pilot of callback is included in this PR now.  I have not tested it at all.  please report back whether it 'just works' for you and if it does enough for your needs.
I will look to add tests to the behaviour if you like it
mark

a pilot of callback is included in this PR now

It looks like this is actually missing from iris.fileformats.rules.as_cubes. Did you miss a file when you updated?

it got missed from
https://github.com/marqh/iris/commit/2242dcc8f1c23f963c8e8c216ebca763f8f5c68f
but made it into
https://github.com/marqh/iris/commit/e183faa17eb68e6bc3d909ca9dad5c1a33350bc9
(i think)
not fast enough to get past you though ;-)

@ehogan a pilot of callback is included in this PR now. I have not tested it at all. please report back whether it 'just works' for you and if it does enough for your needs.

Works for me, thank you! :)

Works for me, thank you! :)

ace \o/
i think a little more testing is required, but this is looking like progress
tbc...

Thanks @marqh for following this up - looks good and will be useful (I had a case yesterday where I could have quite happily used something like this)
Do not let the rest of this comment slow this PR down unnecessarily. But would a refactoring along the lines of:  https://gist.github.com/jkettleb/cfadcf9cf5c584be796b work in this case?  It could be bad because:

it exposes legacy_custom_rules in the interface of as_cubes
its completely untested (I wanted to get a view on the idea first)
I may have it wrong in detail (but don't let this distract you)

But it could be good because:

It gets all that logic on building cubes and sorting the cross references into one place.

Is it worth thinking about?

Hi @jkettleb
i'm considering the points you have raised, although I haven't implemented any yet

it exposes legacy_custom_rules in the interface of as_cubes

this one jumps out though, as custom rules are on the kill it, kill it now list, but this requires managment of deprecations
so keeping them out of any new the API is a boon in my book
i'll comment more when I've considered more

I've added a callback integration test.  I have not added any unit testing
I'm a bit unsure how to approach this, or how much value it adds to the implementation.
I would appreciate some opinions on the implementation presented here and testing strategy before I burn more time on writing test
much obliged
mark

a pilot of callback is included in this PR now

Is this is desirable? I'm not sure what the benefit of using a callback is, over just explicitly iterating over cubes - especially as the filename isn't available. It seems like we're baking in one particular usage pattern, without any/much benefit....?
Filtering and/or modifying the fields has a pattern like:
ok_fields = []
for field in iris.fileformats.pp.load(path):
    if ...:  # Filter
        # Modify
        ...
        ok_fields.append(field)

Doing the same thing with cubes is just:
# Filter and/or modify the cubes
ok_cubes = []
for cube in as_cubes(ok_fields):
    if ...:  # Filter
        # Modify
        ...
        ok_cubes.append(cube)

Whereas using a callback it would be:
def callback(cube, field, filename):
    if ...:  # Filter
        # Modify
        ...
    else:
        raise IgnoreCubeException()

ok_cubes = as_cubes(ok_fields, callback)

I was mistaken; I do still need to use callbacks.

@ehogan - please can you help me understand how callbacks benefit you? Your real world use case will be far more useful than my theoretical speculation!

Incidentally, if one wanted this functionality today, it is possible:
import iris
import iris.fileformats.pp as pp

filename = iris.sample_data_path('GloSea4', 'ensemble_001.pp')
fields = list(pp.load(filename))

from iris.fileformats.rules import ConversionMetadata, Loader, load_cubes
import iris.fileformats.pp_rules

loader = Loader(field_generator=lambda filename_which_is_none: fields,
                field_generator_kwargs={},
                converter=iris.fileformats.pp_rules.convert)
cubes = iris.cube.CubeList(load_cubes(filenames=[None],
                                      user_callback=None,
                                      loader=loader))

print(cubes.merge())

Maybe we just need to wrap that up nicely?

@rhattersley I am currently using code similar to the code in @pelson's comment. I am using a callback because I have a case where I need to update the cube based on the value of a PP field header element (as @marqh said I need the cube and the field it came from in scope at the same time); no amount of modifying the field will enable the cube to be loaded correctly:
def pp_callback(cube, field, filename):
    if field.lbuser[3] == 30403:
        cube.units = 'kg m-2'

I'm happy to continue using my current code if callbacks are not appropriate in the as_cubes implementation :)

no amount of modifying the field will enable the cube to be loaded correctly:

Looks like a translation issue. Whilst I agree that you need to be able to override, there also needs to be a clear path to feeding that back into the source definitions: http://www.metarelate.net/metOcean/mapping/b93ce63359fc654dd1c37fd34e748208ccca195a/
It is also interesting to note that in this particular case, the adjustment can be made after the fact by inspecting the cube's STASH attribute. That is in no means to say that I disagree with the requirement - I do believe it is valuable to have the cube and the field that generated it side-by-side for customisation.

I have a case where I need to update the cube based on the value of a PP field header element ... no amount of modifying the field will enable the cube to be loaded correctly

Super - thanks @ehogan. :+1:

for cube in as_cubes(ok_fields):

The problem with this is that the cubes don't necessarily come out in the same order as the fields go in. So modifying the cubes using [meta]data from the fields isn't really possible. Where this is an issue, perhaps it would be better to borrow from the existing as_pairs & as_fields pattern used for conversion in the other direction. For example (subject to finding a better function name (*)):
ok_cubes = []
for cube, field in fields_as_pairs(ok_fields):
    if ...:  # Filter based on `cube` and/or `field`
        # Modify based on `cube` and/or `field`
        ...
        ok_cubes.append(cube)

With as_cubes(*) built on top as just a convenience wrapper:
def as_cubes(fields):
   return (cube for cube, field in fields_as_pairs(fields))

*) If we go this route then it'd be nice to have consistent, coherent names for the conversions in both directions.

Looks like a translation issue

@pelson Unfortunately, as far as we can tell, there is no standard_name for this STASH code (the link you provided is for 03403 rather than 30403) and the only evidence we have that the units should be kg m-2 is that the STASH code is used in a post-processing mapping expression with other STASH codes that have these units.

in this particular case, the adjustment can be made after the fact by inspecting the cube's STASH attribute

Ah, that's true, apologies for not noticing that!

I've made some updates; it's not complete yet, but there are now some new things, such as
as_load_pairs, as_save_pairs
and iterators to allow in step translation enhancement
if this is starting to feel like the thing, I'll get cleaning up and put the tests into shape
please ping me if 'this is not the way'
thank you
mark

Thanks @marqh
I've had a good look at this now and in summary I think it is basically all good, but I don't think the proposed "rationalisation" goes quite far enough yet..
I think this may take a bit of space, so I''ll split my comments into several blocks...

Firstly, the way I see it, we now have 3 sets of routines, which are roughly : "low-level", "mid-level" and "iris load/save".
high-level IRIS interfaces

LOAD : load_cubes(filepaths, callback. constraints) --> fully_merged_CubeList
"full" iris loader : filepaths = NOT handles, NOT single
SAVE : save(cubes, file)
file: path or handle

basic low-level (fields) interface

LOAD : load(file) --> *field

low-level field loader: file = NOT handle

SAVE : save_fields(fields, file)

file = path or handle

intermediate pipline (iris/rules <--> pp) level

LOAD

(++) as_load_pairs(fields) --> *(field, cube_2d)
- OUTPUT fields != INPUT fields
: (swallows references, E.G. orography)
(++) as_cubes(fields) -> *cube_2d)

(thin wrapper to as_load_pairs)

SAVE

(++) as_save_pairs(cube) --> *(cube_2d, field)
(--) as_pairs(cube) --> *(cube_2d, field)

(old name for as_save_pairs)

as_fields(cube) -> *fields

(thin wrapper to as_pairs/as_save_pairs)

Existing naming confusions
The current naming of the 'low-level' and 'iris-level' routines, shown above, is pretty confusing as it is:

the iris-level has : "load" and "save_cubes" .
the module-low-level has "save" and "load_fields"

As this is a good point for a review, It would make sense to rationalise this with some re-naming.
iris-level layer
I'd suggest re-naming :

(--)load_cubes

(++) RENAME TO load_cubes_merged(filenames, callback, constraints) --> fully_merged_CubeList

(--) save

(++) RENAME TO save_cubes(cubes, file)

The 'load' rename is not really essential, and it would mean deprecating 'load_cubes'.
However, the 'save' rename should make it all much clearer.
module low-level layer

(--) load(file)

(++) RENAME TO load_fields(file) --> *field

save_fields(*field, file)

In this case, the 'load' rename is desirable for clarity.

Newer proposals for the pipeline 'mid-layer'
minimise number of routines
I think we should avoid the 'thin wrapper' routines altogether, as the fistful of routines provided is confusing enough as it is !
That means, if you agree, not introducing as_cubes', and deprecating 'as_fields'.
Then we would have just as_load_pairs and as_save_pairs.
clarify extra operations in the 'full' loading process
The other things that bother me are:

the clarity of what exactly 'as_load_pairs' does beyond simply converting each field (the references issue), and
how you replicate the full 'normal' load operations (including merging)

I think the new routines will now enable you to do everything that the 'standard' iris.load pipeline can do, but it isn't too clear how.
Probably all it needs is a bit more/improved documentation.
On that point, it would really help if the module listings were sectionalised somehow.  Possibly just renaming with common prefixes (and alphabetic ordering) might deliver,  or it may be in order to write a special module wrapper for sphinx.
I don't think there's much scope for extending the userguide load/save chapters, nor does it seem appropriate to add new ones.
However, as it's a specialist issue, maybe a 'whitepaper' would be a good place for this ?

Thanks for patience @marqh !
I think I'm clearer on all this now.
Not all of the above needs to be enacted in this PR : we can separate some out, but we probably do need to agree the overall strategy !
Let me know what you are thinking, and we can discuss further.

Thanks @marqh & @pp-mo ... clearly a lot of time & thought has gone into getting us this far. :+1: The overall direction seems OK so I'm only going to stick my oar in on a couple of specific issues.
Firstly, I think we need something more descriptive than as_load_pairs and as_save_pairs. If nothing else, they make it sound like they actually load/save something, when in reality they are just converting between cubes and fields. Perhaps convert_cubes_to_pairs and convert_fields_to_pairs? (Or the less explicit cubes_as_pairs & fields_as_pairs.)
Secondly, ...

what exactly 'as_load_pairs' does beyond simply converting each field

It does seem a shame that we don't have a one-to-one field-to-cube conversion API. The current API does "clever things" with factories and references to tie everything together but perhaps there might be an intelligible way of exposing this action as a distinct operation. That might even let us get away from needing "pairs" when loading. Taken with a huge pinch of salt, this might enable:
# This is a one-to-one conversion process
cubes = convert_fields_to_cubes(fields)
for cube, field in zip(cubes, fields):
    # Tweak `cube` based on `field`
join_up_reference_thingies(cubes)

There are some unknowns here, not least of which is how/when we would merge cubes and their corresponding reference-surface cubes. This is a particular problem for time-varying reference surfaces. Perhaps this issue is one for the someday/maybe wish-list?

Hi @pp-mo
i've implemented some renames and cleaned things up somewhat
i'd appreciate your thoughts; i'm not convinced it is done yet

Looking good.
We had some offline discussion.
I've proposed some possible code tweaks here : pr to this pr, in your repo

Some other possibilities it may be worth considering :

we could make load_pairs_from_fields private

the format-specific ones in pp and grib would still be public
the only usage should be from alternative fileformat modules, no direct calls from user code ?

a proper docstring for load_cubes would be nice, while we are at it
in fact, a full pep8 of rules.py is now close (but maybe not relevant here)

we could make load_pairs_from_fields private

on reflection, I'm against this, by a little.  The PP and GRIB ones are useful, but if a person can make their own convertor then this is a useful feature

a proper docstring for load_cubes would be nice, while we are at it

that sounds helpful

@pp-mo what's your view on test coverage at this stage? Is there work to do? if so, where?

@ehogan @cpelley please note that @pp-mo and I have made some key changes to the interface.
We think the capabilities are all here, loading 'pairs' using
load_pairs_from_fields

provides functionality for per-filtering, modification and callback-like modification (but not a callback, and there's no filename available)
please may you consider this PR in its current state and consider whether we are meeting your needs?
many thanks
mark

please may you consider this PR in its current state and consider whether we are meeting your needs?

Still works for me :) My code got a few lines longer, but it's still much better than it was before!

From offline discussion with @marqh ...
There are some missing commits here that should provide equivalent functions in the fileformats.grib module -- as indicated in the whatsnew text.
However... we realised that the changes wanted in grib module will expose the _GribMessage object from the "new grib loader" -- the whole of which is currently private (i.e. iris.fileformats.grib/._message._GribMessage).
Obviously we do need some concept of "what you can do with" a new-style GribMessage, for a grib.load_pairs_... method to be of any value.
Unfortunately, just renaming _GribWrapper so it is public doesn't necessarily solve all our problems, as it does not currently have a clear API or documentation.
The related PR #1962 is created to address this.
In this PR we'll pretend for now that those problems don't exist, so as now to deal with multiple issues at once.  If we can fix up #1962 and merge that first, then the changes here will be ok.

currenlty blocked by

[ ] #1967

and

[ ] #1962

Hi @marqh , I don't want to introduce ticket noise here but we have a use case where the UM release number is not correctly specified in the file.  This means we end up falling over before even returning an iris PPField.  I only mention this in case, such a public interface might prohibit addressing this issue (and those like it in future).  I should add that I have not seen this use case myself and am speaking on behalf of a colleague.

Thanks @cpelley - definitely not related to this PR. This PR relates to how one converts from Field instances to cubes. Your issue relates to how one converts from disk to Field instances. I definitely think there is something we can do for the use case you are describing though.

Thanks @pelson, I thought as much.  Cheers

@pp-mo @rhattersley atanyone-else
in case it wasn't clear, I consider this a completed piece of work, with a working implemetation;  I am not going to do any more on this until the code is reviewed; i'm poised to implement review actions.

I am not going to do any more on this until the code is reviewed; i'm poised to implement review actions.

Sorry, did miss that :  I will get onto it !

Strictly speaking, I think we should deprecate 'GribDataProxy', as we already have with 'GribWrapper'.

Other than those latest comments, I think this is ok now.
I note that we still haven't quite finished deprecating all the "old" GRIB loader functionality, because some public sub-modules (load_rules / grib_save_rules) may need more attention.
But that can+should be done separately.

I see you now need to remove the test for 'as_messages'.
Did you decide to leave alone the docs ordering, or did it get forgotten ?
(i.e. the comment about __all__ )

Hi @pp-mo
i missed those two in haste, thank you for highlighting them
hopefully this address the outstanding points
thank you
mark

We now have two of these !

Apart from that, all good now as far as I can see.
Can you also sqwish it ?
Sooo close !

We now have two of these !

doh :(
fixed now, and squished
are we there?
/me crosses fingers

Yes !!
Worthy of an extreme patience award, @marqh .

hooray
many thanks @pp-mo


sftpconfig published

@lyngbach
You really should remove your sftp config imediately! makre sure, you also delete all changes of this file.
Please look at https://help.github.com/articles/remove-sensitive-data/
Hopefully you see this as soon as possible

Doh, thank you for noticing.
Password changed and past history removed, ty again.


Removing all cart lines in checkout results in empty sidebar

Describe the bug
If you remove all cart lines via removeCartLine the checkout sidebar ends up being blank.
Steps to reproduce the behavior:

Remove all line items

Expected behavior
I guess I'd expect either an error message about empty cart or redirect to cart/home?
Screenshots

@kumar303 I thought we had some tickets related to this issue or that we had resolved it somehow

@kumar303 I thought we had some tickets related to this issue or that we had resolved it somehow

Hi @cpeddecord  can you please guide us through here once on how resolve this because we are unable to find the solution on this here..

I'm having this issue as well. When all cart lines are removed my existing checkout extensions disappear from the order summary section (upsell & checkbox dropdown widget). They only re-render if a product is added back to the cart.

I have a checkout UI extension that may remove cart line items. Sometimes that results in an empty cart. The purchase.checkout.cart-line-list.render-after target works great when there is a non-empty cart, but it doesn't render when the cart becomes empty. I think it would be reasonable to render purchase.checkout.cart-line-list.render-after even in empty carts as the Your cart is empty message could be thought of as the empty state of the cart-line-list. And, practically the checkout UI extension can then choose to not render below the empty message, but at least there's the option.


How do you use this repositry for android deployment. Kindly explain a bit.

I generated frozen model as per instructions. Now I am wondering how to install this application on android.

To use this frozen model  create assets folder in your project folder where java and res  folder reside. Now paste this frozen_inference_graph.pb in this assets folder.
create a string in your java file where you will use tensorflow mobile.
private final static String MODEL_FILE = "file:///android_asset/frozen_inference_graph.pb";

now create TensorFlowInferenceInterface to use this model
public synchronized static boolean initialize(Context context) {
sTFInterface=new TensorFlowInferenceInterface(context.getAssets(), MODEL_FILE);

flatten your bitmap data, pass it onto the sTFInterface and fetch results.
sTFInterface.feed(INPUT_NAME, mFlatIntValues, 1, h, w, 3 );
sTFInterface.run(new String[] { OUTPUT_NAME }, true);
sTFInterface.fetch(OUTPUT_NAME, mOutputs);

The mOutputs is your Flattened segment mask use it as per your requirement .👍👍
dailystudio has created this awsome project but (No disrespect) my project required the model file to be embedded in the apk itself so i had to use assets..
You can look at the full working code of the above snippet here in my project CameraBlur.


DOC-9350 Docs for Log export to Azure Monitor supported for Dedicated Azure clusters (Enable section)

Fixes DOC-9350
In export-log.md, added steps to Enable log export for Azure Monitor.
Rendered preview: Enable log export for Azure Monitor

Looks great Florence!
Aside from accommodating the change Akshay is rolling out for log_name, could we provide an example of custom logging configuration?

@kevin-v-ngo I modified step 3 to include a custom logging example. Please review again.

The custom logging will not work in production until PR 17394 [CC-26955] intrusion: update log group in azure log export is deployed.


feat(ui-watt): modal

Description
First step in implementing a modal component for the design system. Possibly also closes #619.
References

#618

praise: looks great! Awesome work so far!
issue: can you merge main branch and fix the conflicts?


⚠ Processors has degraded performance

In 75a7fd5, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 49 ms

Resolved: Processors performance has improved in c6534a1.


[CI][Packaging] Manylinux arm64 wheel nightly builds sometimes fail

Describe the bug, including details regarding any error messages, version, and platform.
It does seem that the wheel-manylinux2014-cp37-arm64 job failed due to timeout: 3h 6m 35s
Those jobs are run on the self-hosted ARM linux. Runner name: 'k8s-runners-linux-arm-md8kr-wq4hm'
We'll try to increase the pods size on the k8s solution and see how it behaves.
Component(s)
Continuous Integration, Packaging

We doubled CPU and memory for the ARM runners on crossbow and the build time was decreased considerable, see: https://github.com/ursacomputing/crossbow/actions/runs/4777354272/jobs/8493016319
I am closing this issue.


[Document Intelligence] Generate 1.0.0-beta.3 version

Typespec def: https://github.com/Azure/azure-rest-api-specs-pr/pull/17637

API change check
APIView has identified API level changes in this PR and created following API reviews.
com.azure:azure-ai-documentintelligence


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Remove "S3 with local API key" Esti test

This no longer does anything useful.  I added it way back in
#927.
The system test was called "Nessie" back then :-)
At the time we had no auth tests or anything.  We now go through these codes
all the time, both on Esti and on Cloud integration tests.  No point in
this test.
Also it usually ends last, so we may gain ~1 min wall-clock time per Esti
run..

Thanks!


Feature/#1110 dall e

Warning: The PR is not ready to be merged.
OpenAI chats use the DALL-E API to generate images if a prompt starts with "Generate an image". It then uses the completions API to make the prompt more elaborate before sending the request to the image generation API.
Currently, the function only returns the image URL so it doesn't render in the UI yet. @mckaywrigley would you be able to point me in the right direction for making the images render in the UI? You can see some of my failed attempts in the prior commit. Many thanks!
Also, I think the image parameters (DALL-E 2 vs 3; HD vs standard; resolution) should be provided in the settings.

@Chr96er We're going to be implementing DALL-E with our tools update later this week.

I suspect if you wait 3-4 days this will all be taken care of, so you may just want to hang tight and check back then!

Amazing, thanks @mckaywrigley!

Did the work for this feature get moved to a different PR?

@erahhal No, it was rejected because the images code was supposed to change that week. I haven't kept exact track of what happened since but I think dall-e hasn't been integrated yet. I'm using my fork at the moment, because I only require image generation. It works (returning the dall-e image url), but I agree that it shouldn't be merged as it is right now.


Handle network_driver: Unhandled wifi event: 21.

I (1593851) wifi:bcn_timeout,ap_probe_send_start
I (1593851) network_driver: Unhandled wifi event: 21.

repeatedly.. on a C3card - most likely poor Rssi..
Solution:
Silently handle it - as there already is the  wifi:bcn_timeout,ap_probe_send_start log
or
gracefully log "bcn_timeout: Potentially weak wifi signal", or better wording.

What does bcn_timeout, ap_probe_send_start mean?
The STA does not receive the Beacon frame within the specified time (6 s by default for ESP32, equals to 60 Beacon Intervals). - The reason could be:
Insufficient memory. “ESP32_WIFI_MGMT_SBUF_NUM” is not enough (there will be errors like “esf_buf: t=8, l=beacon_len, …” in the log). You can check this by typing the heap size when received a Disconnect event.
The AP did not send a beacon. This can be checked by capturing beacons from AP.
Rssi too low. When the Rssi value is too low in complex environments, the STA may not receive the beacon. This can be checked by retrieving Rssi values via esp_wifi_sta_get_ap_info.
Hardware related issues. Bad package capturing performance.
When there is a bcn_timeout, the STA will try to send Probe Request for five times. If a Probe Response is received from the AP, the connection will be kept, otherwise, the STA will send a Disconnect event and the connection will fail.

This could also be due to the beacon interval used by the router, if it is set for a longer than normal time, or itself is suffering degraded performance due to congestion, may exaggerate this problem. And as you point out, it could be poor RSSI, which, compounded with a longer beacon interval could trigger this callback if just a single beacon ping is missed.

I looked closer at esp-idf/components/esp_wifi/include/esp_wifi.h the beacon timeout is actually due to the event 21 which is ESP_ERR_WIFI_NOT_ASSOC, the WiFi connection is not associated with an access point.  At what point in the application execution does this happen, when starting the network, or at some point after? Does any network activity succeed before this error occurs?

cc @arpunk - whom I believe reported it on telegram..

The error 21 is being reported directly by the esp-idf, and as you pointed out, a handler for this could be useful, the default should just report a more useful error, but users could override that with a custom handler.

My mistake... I was accidentally looking error codes and not event codes 🤦🏾♂. The unhandled wifi event 21 is indeed WIFI_EVENT_STA_BEACON_TIMEOUT, I don't think there is anything a user can to in their application to remedy this situation, unless someone builds a wifi connected autonomous robot, they may need to have a handler for this event to have the robot move closer to the AP. For now we can log a more helpful error. I believe if enough beacon timeouts occur in a row a WIFI_EVENT_STA_DISCONNECTED will be emitted.

PR #1137 adds a handler and a configurable (optional) STA mode callback for the beacon_timeout event. Also improves the log message, so it will be helpful, even if the callback isn't used.


Update balanceTx unit and property tests to Conway

Why?
The cardano-balance-tx:test test suite, in particular Internal.Cardano.Write.Tx.BalanceSpec has several tests only running in the Babbage era, and not in Conway.
For continued confidence when supporting new node bumps and future eras, these tests should be updated to use Conway. Ideally, they should automatically be run in all recent eras, such that we cannot forget to update them when a new era is introduced.
The https://cardanofoundation.atlassian.net/browse/ADP-3413 e2e test failure showed that coverage in both unit and integration tests were lacking in the context of balancing plutus txs in Conway.
What?
All Internal.Cardano.Write.Tx.BalanceSpec tests should run in either Conway or Conway and Babbage.
How?
No response

Draft PR: #4762


fix: ensure that the HTTP receiver sanitizes headers in accept()

Even though the underlying structured and binary receivers already sanitize
the headers, this needs to be done at the receiver.accept() level since
the headers are inspected there to determine what mode the event is being
sent as.
Fixes: https://github.com/cloudevents/sdk-javascript/issues/237
Signed-off-by: Lance Ball<EMAIL_ADDRESS>

Ping @cloudevents/sdk-javascript-maintainers PTAL


apps: reduce code duplication between the apps' testing frameworks

What would you like to be added:
The apps' testing frameworks are typically copy-pasted between each other.
Like RootServer, we can try to DRY it up.
Why is this needed:
Reduce code duplication i.e. technical debt

Closed as introducing the abstraction might cause more headaches than it solves


⚠ HawkeUno has degraded performance

In df5e1c3, HawkeUno ($UNO) experienced degraded performance:

HTTP code: 403
Response time: 1946 ms

Resolved: HawkeUno performance has improved in 78256c9 after 8 minutes.


The weaver assembly references an out of date version of Mono.Cecil.dll when using Fody 3

We got the following exception when using Fody 3

Fody: The weaver assembly 'Stamp.Fody, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' references an out of date version of Mono.Cecil.dll. Expected strong name token of '1C-A0-91-87-7D-12-CA-03' but got '50-CE-BF-1C-CE-B9-D0-5E'. The weaver needs to update to at least version 3.0 of FodyHelpers.

yes I was already typing in #26 ;)

@SimonCropp I have already a question on this.
The nuspec references Fody, while the packages.config refers FodyCecil. How does that work?
There is also no FodyCecil 3, so not sure how to update to make this Fody3 compatible.
Thanks!

have a look at https://github.com/Fody/BasicFodyAddin

closing this as stale. if it is still an problem please raise a new issue

@304NotModified I'm running into this issue. Any updates ? Would love to use this weaver!

@hali15845 perhaps submit a pull request that fixes this problem

@hali15845 which platform? I had some trouble to get this addon working the new CSProj format.


Application breaks when Markdown Shortcut is deleted using backspace

Steps to reproduce the behavior:

open editor
use any markdown shortcut, e.g. # + space -> cursor size indicates H1
press 'delete' for the first time -> '# '
press 'delete' for the second time -> '#'
press 'delete' for the third time -> application crashes

Expected behavior:
#-sign get's deleted

I can't reproduce this in latest chrome/firefox/safari on tiptap.scrumpy.io. Can you provide a codesandbox?

Using latest chrome on tiptap.scrumpy.io:

Firefox and Safari working fine....

Do you have the same problem on https://prosemirror.net? Which chrome version do you use? Can you please disable any chrome extension and test again?

Found the culprit. Thanks! https://chrome.google.com/webstore/detail/multi-highlight/pfgfgjlejbbpfmcfjhdmikihihddeeji


fix(runner): Remove null characters from terminal output

This slices the buffer rather than modifying it. The buffer slice is returned, with the exit code, as an object:
{
  exitCode: int,
  buffer: Buffer
}

What is the exact difference for the user from doing this/what exactly is fixed here?

Basically this fixes the issue: #1343, where a user reported that the \x00 characters printed in the console would appear as symbols. This fix slices the tail off the buffer rather than replacing it with the \x00 bytes.

@budde377 thanks, just saw you mentioned it in the commit message -.-


Updated the DHPublicKey field as per current REBIT spec

Fixes the current open issue #5

@vishwa-vyom this is a fix for one of the currently open issues. Also, I believe nonce generation logic can be added to the KeyMaterial as well, so that this service can be usable OOTB. Let me know if you would like me to raise a pull request for the same, thanks.

@Formatter Thanks for the contribution, I will discuss with Sasikumar to merge your pull request.
Regarding the Nonce we purposefully avoided since the generated key can be reused till the expiry, but nonce has to be different for every transaction.

Alright, sounds good. Let me know if there is a new feature request/bug,happy to help out. My startup is building out FIU/FIP modules and this has great boost to our efforts!
Thanks for this.


Windows: ERROR: No writable path to write roms into

Hi
If I run the Windows version on the MAME (0178b) directory I get this message:
"ERROR: No writable path to write roms into"
I'm running a command prompt with administration rights.
Regards

Hi, can you make sure you have a "roms" directory on your Mame path ? This is the default root roms path and should be created.

I close this one because of no activity. Please reopen if you are still concerned.

I'm getting the same error, the folder is titled "rooms"  btw

The rompath specified needs to be created. ia-rcade will not create it. If it exists, make sure you have the rights to write into.

It worked before, why is it not working now? By the way, if the roms folder already exists, how do I get ia-rcade to recognize it?

You can set your rompath using "-rompath " in the command line (see readme)

Thanks, ill try it soon


fix the generation of invalid/incorrect scripts for Next.js applications

resolves #3654

@jculvey when reviewing this PR please have a look at the details I put here: https://github.com/cloudflare/workers-sdk/issues/3654#issuecomment-1766319602 as that shows what's the actual correct output
(PS: I am tempted to add unit tests to check that but it feels a bit of an overkill and inconsistent with our other frameworks so I am a bit hesitant in doing that 😕)

@dario-piotrowicz is this waiting on anything or can it be merged?

@admah yeah sorry about it 🙇, it can be merged, but I wanted to do one last double check to make extra sure that the changes are correct, I'll do that today and merge the PR if everything is as it should be, I hope that's fine

That's great! I just wanted to make sure the PR was good and not forgotten 😄

I've tested it with npm and pnpm, bun doesn't seem able to run the package locally so I'll need to test it with the beta version after merging, I think we do have issues with yarn so that's also to be checked later
But I think this should be good 🙂 (even if there were to be something a bit off this is still a net improvement since the current scripts do not work anyways)


Migrate the repository to use Yarn Berry

Currently, we're using Yarn 1, which the core Yarn team has stated they do not plan to continue to maintain.
Instead, we should migrate to using Yarn Berry (Yarn 3) or another package manager.
If we do go with Yarn Berry, they often suggest using Yarn Plug'N'Play (PNP) and commit the node_modules cache into Git versioning. I dislike this strategy, however, and often opt to use nodeLinker: node-modules instead, which mirrors the behavior of Yarn 1 and NPM much more closely.
An example of this setup is as follows:
https://github.com/crutchcorn/react-native-monorepo-example/blob/main/.yarnrc.yml

I did pnpm instead


updating CRD apiversion to v1

The main change that needs to happen is here
This updates the in-tree deployment option to utilize the new apiVersions for clusterrole, clusterrolebinding, and customresourcedefinition  under the deploy/ directory

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

I think that e2e test that is still waiting is orphaned when I changed the e2e tests to have multiple versions, so it will likely never run. But it looks like everything else passes fine.

I think that e2e test that is still waiting is orphaned when I changed the e2e tests to have multiple versions, so it will likely never run. But it looks like everything else passes fine.

That's just due to the branch configs. I fixed it.


Compile errors with v0.5.0-preview on Windows

After updating to 0.5.0 from 0.4.0 I get the following compilation errors:
cpprealm/experimental/managed_list.hpp(139): error C2143: syntax error: missing ';' before '<'
cpprealm/experimental/managed_list.hpp(143): note: see reference to class template instantiation 'realm::experimental::managed<std::vector<_Ty,std::allocator<_Ty>>,enable_if<is_primitive<T>::value,void>::type>' being compiled
cpprealm/experimental/managed_list.hpp(139): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
cpprealm/experimental/managed_list.hpp(139): error C2334: unexpected token(s) preceding '{'; skipping apparent function body
cpprealm/experimental/managed_list.hpp(316): error C2143: syntax error: missing ';' before '<'
cpprealm/experimental/managed_list.hpp(343): note: see reference to class template instantiation 'realm::experimental::managed<std::vector<T*,std::allocator<T*>>,void>' being compiled
cpprealm/experimental/managed_list.hpp(316): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
cpprealm/experimental/managed_list.hpp(316): error C2334: unexpected token(s) preceding '{'; skipping apparent function body
cpprealm/experimental/managed_list.hpp(323): error C2143: syntax error: missing ';' before '<'
cpprealm/experimental/managed_list.hpp(323): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
cpprealm/experimental/managed_list.hpp(323): error C2334: unexpected token(s) preceding '{'; skipping apparent function body
cpprealm/experimental/managed_list.hpp(332): error C2143: syntax error: missing ';' before '<'
cpprealm/experimental/managed_list.hpp(332): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
cpprealm/experimental/managed_list.hpp(332): error C2334: unexpected token(s) preceding '{'; skipping apparent function body
cpprealm/experimental/managed_list.hpp(338): error C2143: syntax error: missing ';' before '<'
cpprealm/experimental/managed_list.hpp(338): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
cpprealm/experimental/managed_list.hpp(338): error C2334: unexpected token(s) preceding '{'; skipping apparent function body
[464/468] Building CXX object _deps\cpprealm-build\src\CMakeFiles\cpprealm.dir\cpprealm\internal\network\network_transport.cpp.obj

Hi @adamski, I can't reproduce on my side. Are you able to successfully build the Windows example here? Can you also make sure you've added the necessary additions to your CMakeLists.txt file for when using MSVC (These can be seen in the example project.)

I'll try the example project. I can build 0.4.0, the errors only occur with 0.5.0.

@adamski make sure the git submodules are up to date. v0.5.0 bumped the Realm Core dependancy.

I'm using FetchContent / CPM so I assume that should take care of getting the correct submodules?

Switching the include order fixed the issue.
From
#include <cpprealm/experimental/sdk.hpp>
#include <cpprealm/sdk.hpp>

to
#include <cpprealm/sdk.hpp>
#include <cpprealm/experimental/sdk.hpp>


enh: get rid of the managed DS settings

No longer needed as the Dust agent config page replaces it.
We can happily remove this code.

:+1:


Feature request - Make config available for reading triggers

Currently when the jobs are started the config is not available. Due to this the triggers cannot be made a part of the config and needs to be either hard-coded or manually read from a config file.
It would be good if config is available when triggers are evaluated.

grailsApplication is now on TriggerConfBuilder delegate and referencable in
triggers = {
  simple name:'TestJobTrigger', repeatInterval:grailsApplication.config?.myJob?.repeatInterval ?: 300000l, startDelay:0

}


Add new linters?

Hello!
For example better linter for css https://github.com/stylelint/stylelint?
Thank you

Hi, thanks for logging this. Would have be interested in putting together a PR for this?  I would be happy to help.

Or EJSLint for EJS files.


assets folder error

Angular CLI: 1.7.2
Node: 9.5.0
OS: win32 x64
Angular: 5.2.7
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router
@angular/cli: 1.7.2
@angular-devkit/build-optimizer: 0.3.2
@angular-devkit/core: 0.3.2
@angular-devkit/schematics: 0.3.2
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.1
@schematics/angular: 0.3.2
@schematics/package-update: 0.3.2
typescript: 2.5.3
webpack: 3.11.0
I try to upload a image assets/upload_image but it give 404. What is wrong ?

Please take a look at the asset configuration documentation and make sure you're following the steps there. https://github.com/angular/angular-cli/wiki/stories-asset-configuration
If there is still an issue, please update this issue with more information and ideally a repo that represents the issue you're experiencing.

Closing as no reproduction was provided.


Code snippets in the chat window loose syntax highlighting occasionally

Describe the bug
The code snippets shown in the chat window loose syntax highlighting occasionally and appear in plain white color. Both the input as well as the output code is affected by this. Sometimes both, the highlighted code as well as the generated code appear without syntax highlighting. One thing I could observe is that sometimes the syntax highlighting is correctly applied until the very end of the code generation. Once code generation finishes, the syntax highlighting is lost again.
I am not sure what is causing this. I don't use any special themes and since the code snippets are correctly formatted as such, I assume there is just the color coding of the syntax highlighting missing in the last step.
To Reproduce

Use Ollama as your provider
Use llama3 as your chat model
Mark code in your editor and have it fixed, explained, refactored by twinny
Either the selected code or the generated code is missing syntax highlighting and appears in plain white (see screenshot below)

Expected behavior
Syntax highlighting being correctly applied to both the code used as an input as well as the generated code.
Screenshots

Edit: the first screenshot shows a different model than llama3 because I moved over to codeqwen because I encountered the syntax highlighting issue. But to be clear, I did use llama3 when encountering the issue.
Logging
Rnable logging in the extension settings if not already enabled (you may need to restart vscode if you don't see logs).  Proivide the log with the report.
API Provider
Ollama
Chat or Auto Complete?
chat
Model Name
llama3:latest
Desktop (please complete the following information):

OS: Ubuntu 24.04
VSCode (see metadata attached below)
Twinny Version: v3.11.35

VSCode:

Version: 1.89.1
Commit: dc96b837cf6bb4af9cd736aa3af08cf8279f7685
Date: 2024-05-07T05:16:23.416Z
Electron: 28.2.8
ElectronBuildId: 27744544
Chromium: 120.0.6099.291
Node.js: 18.18.2
V8: 12.0.267.19-electron.0
OS: Linux x64 6.8.0-31-generic snap

Additional context
It does happen for other models as well (like codeqwen), but it most often appears with llama3:latest (pulled directly using Ollama).
Please let me know if you need more input or if there are other ways to successfully use llama3 and I am just doing it wrong. Also thanks for this amazing extension :heart:

Hello, thanks for the report.  Basically when an LLM replies with the code/text it needs to provide backticks "```" to indicate that the code is a codeblock.  By editing/improving your prompt you might get better results,  if the model decides not to add backticks I don't know it's code and I am too lazy to implement some other code detection method.

Fair enough. Since in this special case I tried to fix code using twinny, do you think it is safe to assume to use syntax highlighting even if the model does not provide it itself? If I understand it correctly the missing syntax highlighting in the screenshot does not concern the model but the pasted code. But that being said, I am not sure if the code I highlighted will just be pasted into the Fix code editor or if a model is already doing some preprocessing there.
Just trying go for the low hanging fruit in case such a simple heuristic might improve this issue already, but I also get that it is not high prio and maybe not worth adding workarounds for misbehaving models or wrongly used models.
Hope that helps, lmk if you need anything else and no hard feelings if you focus on something else instead

I see, sorry I didn't realise you were referring to pasted code also.  Some how you'd have to provide the language to the markdown react syntax highlighter like ```python, I could read  the current active editor, but if the user changes it then pastes the code it might be wrong.

I see, thanks for your explanation! All in all it sounds like it might be too much work for a corner case like this. I guess the only way you could detect it is by the active editor as you pointed out and if possible get the file type and create the markdown syntax highlighter based on this. But as you also pointed out, in case it is possible for a user to switch the editor before the code was pasted, that also is not a consistent behavior.

It might also be possible to get the language at point of copy not just paste. However that doesn't cover the fact that code can be copied outside of the editor too. Code classification would be the best way, might be a waste of tokens for someone using external api like open AI for chat, for local instance it would be fine, not sure if would also need a new model type or or could classify with the instruction model.

Code classification would be the best way

I agree. Not sure but could there be a way that VSCode can handle that for you? I assume they themselves might have some classification to autodetect which syntax highlighting to use.
Anyways, thanks for bouncing back some ideas! I guess copilot gets away with it by just mentioning the context that it takes into account and afaik does only allow code in the context of VSCode


Inheritance?

Is class inheritance currently implemented in any way? Or any sort of shorthand to save me copypasting all methods' declarations from the superclass to subclass? I'm trying to create a .kailua file for Love2d, and I'd love to know if there's a better way to do it before I start doing stupid things.

@shviller Currently no, due to the variety of common class systems for Lua.


Skip failed chunks

New hook added to downloadCutout._download() to collect failed chunks
Retries exceeded behavior in downloadCutout._download() altered to default to continuoing the download. If callers of downloadCutout.download() want to stop the download, they can provide a failed_chunk_hook which raises
Failed chunk collector class keeps failed sky locations and outputs them with astropy.table.Table.write()
Cleanup documentation of downloadCutout._download and downloadCutout._download_chunk kwargs to also exist at top level in downloadCutout.download() for ease of discoverability.
Cleanup: convert stats system to a context manager class to avoid proliferation of globals in download.py, and centralize stat pretty printing.

I've addressed the bugs I found on my own review of this, and tested it with resume functionality.


imgui styling

Added some styling to the new About Me and everything in Settings

Need to make some more adjustments. I'll open a new pr when ready


Add new port [libsigcpp-3]

New port libsigcpp-3 (https://github.com/libsigcplusplus/libsigcplusplus)

Fixes #13379

Submission containing materials of a third party:
The libsigc++ Development Team under LGPL-3.0 License

Work in progress.


feature: Unsaved changes alert

Closes #9992.

I like the simplicity of the solution. But it might affect loading time especially on larger forms when we send duplicate data, right?

Another idea: Instead of sending the full data, couldn't we generate a md5 hash or similar and just compare the hash? Would be significantly less data for large forms.

If you want to work on the MD5 hash version you can, but this is a good first pass I think

@danharrin Have you considered using local storage to track the dirty state? That's how I do it for my pages. It's much more performant and works with SPA mode. I have this at the bottom of my views:
<script>
    document.addEventListener('DOMContentLoaded', function () {
        localStorage.removeItem('has-unsaved-filament-form');
    });
</script>

@script
    <script>
        $wire.on('form-updated', function () {
            localStorage.setItem('has-unsaved-filament-form', 'true');
        });

        $wire.on('form-saved', function () {
            localStorage.removeItem('has-unsaved-filament-form');
        });

        window.addEventListener('beforeunload', function (e) {
            if (localStorage.getItem('has-unsaved-filament-form')) {
                e.preventDefault();
                e.returnValue = '';
            }
        });
    </script>
@endscript

Having to dispatch a browser event (from the backend?) after every field is changed would be refreshing the component tons, right?

@danharrin Yeah sorry, that example was from a builder (fully live) page. But the general idea of using local storage could still work. Perhaps you could store a hash of the initial data in LS and compare that to the new hash on the way out?

Is your concern that the old data gets sent back and forth with each request?

@danharrin That's part of it, but that wouldn't be an issue if it was a hash as @pxlrbt suggested. My bigger concern is it not working with SPA mode. That's a fairly major issue IMHO. If there's an alternative solution which let's it work in both modes I think it's worth exploring.

I do not understand how your suggestion supports SPA mode? The issue is that when navigating, you cannot cancel the request yet

Ah right, the issue is with using beforeUnload. Gotcha. Livewire has a wire:navigating event that fires before pages are navigated away from: https://livewire.laravel.com/docs/navigate#javascript-hooks. Couldn't that serve the same purpose for SPA mode?

Nope, because even if you catch the event, there is currently no way to stop the navigation from happening

@pxlrbt @binaryfire I've implemented an MD5 hash solution in a56997b423d0db4ae5f1a1b3ff99f5e61fb02fa9

Nope, because even if you catch the event, there is currently no way to stop the navigation from happening

I'm curious if LW is aware of this limitation? I think it could be worth informing them since reminding a user to save can be important in some cases.

Hi @bilogic. This has been solved and PR'd: https://github.com/filamentphp/filament/pull/12363

ok thanks!


No databases shown on Amazon ElastiCache, Redis

System information:

local machine: Ubuntu 18.04
AWS: Centos 7
DBeaver EE <IP_ADDRESS>812101127
openjdk 10.0.2 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu<IP_ADDRESS>)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu<IP_ADDRESS>, mixed mode)

Connection specification:

Redis [5.0.0 (standalone) Amazon ElastiCache]
Jedis [2.9.0]
SSH tunnel via bastion, using public key.

Describe the problem you're observing:

DBeaver connects via SSH tunnel to Redis-server on AWS with no errors. Information from the Redis-server is shown, but no databases are shown.
Databases are shown in in "redis-cli" and "Redis Desktop Manager"

Hello,
I have very similar problem, so, re-opening this issue.
I'm using DBeaver Version 7.3.0.
Connection specification:

ElasticCache, cluster with SSL
Redis [4.0.10]

The problem:

Connection looks fine. When testing connection, Server information show "Redis null". In Connection->Databases->cluster-> "Key list" are empty
Tried without cluster and SSL ->skip host name validation , no luck.

Additional information:

RDM works fine.

Hello,
I have very similar problem, so, re-opening this issue.
I'm using DBeaver Version 7.3.0.
Connection specification:

ElasticCache, cluster with SSL
Redis [4.0.10]

The problem:

Connection looks fine. When testing connection, Server information show "Redis null". In Connection->Databases->cluster-> "Key list" are empty
Tried without cluster and SSL ->skip host name validation , no luck.

Additional information:

RDM works fine.


fix: update README.md

Updates the README.md file appropriately: fixing the Luau name definition (lowercase u, /ˈlu.aʊ/) and capitalizing "Roblox" properly.


Add Pharo10 in CI

Looks good but 9 tests are failing on Pharo 10:
PMKDTreeTest:

testKDTree1DimensionIntegers

PMGeneralFunctionFitTest:

testBasic
testFunction
testMaximumIterationsProbabilistic
testPrecision
testPrint
testRelativeError
testResetBestPoints
testTruncate

I will open an issue for that, then we will fix that issue first and then accept this PR

Here is the issue: https://github.com/PolyMathOrg/PolyMath/issues/243

And a PR to fix it: #244


setGeometry does not rotate avatar

I am trying to rotate my but with avatar.setGeometry but what ever I set as rotation there is no movement at all.
another question I have, is there any event that fires when really all of the bot is initiaized? when agent for example can no longer return undefinded and all is save to use ?

Thanks to @gwigz this is resolved now


v4: APP_PREFIX -> URL prefix does not apply on some API calls

Describe The Problem
APP_PREFIX=/wgdashboard
STR:

Try to create new peer
Press to show QR code
Maybe some other API calls

Expected Error / Traceback
http://<IP_ADDRESS>:10086/wgdashboard/api/downloadPeer/wg2?id=1ErzA7Nj9%2B16hv9VUGJXQIwHtp903Vb8ptKLJIKecDU%3D - 401 Error
but
http://<IP_ADDRESS>:10086/api/downloadPeer/wg2?id=1ErzA7Nj9%2B16hv9VUGJXQIwHtp903Vb8ptKLJIKecDU%3D - OK

http://<IP_ADDRESS>:10086/wgdashboard/api/getAvailableIPs/wg2? - 401 Error
but
http://<IP_ADDRESS>:10086/api/getAvailableIPs/wg2? - OK

Ah yes this should be fixed now. Turns out I forgot to add the prefix to some API endpoint.

My bad :(

Thanks for fix.
I will rebuild docker and let you know the results.

All works great now.
Thanks for fix.