Update QUICHE from f99859b80 to d016c016b

https://github.com/google/quiche/compare/f99859b80..d016c016b
$ git log f99859b80..d016c016b --date=short --no-merges --format="%ad %al %s"
2022-02-07 martinduke Rollback for 4 changelists related to QUICv2.
2022-02-07 wub Internal change
2022-02-07 dschinazi Internal change
Signed-off-by: Ryan Hamilton<EMAIL_ADDRESS>

/assign @alyssawilk

@alyssawilk, there was a QUICHE rollback yesterday that I think would be wise to get into Envoy.

/lgtm deps


Wait strategy is always overwritten on start

Expected Behaviour
A manually set wait strategy won't be overwritten on start.
Actual Behaviour
On start, a manually set the wait strategy will be overwritten with withWaitStrategy(testcontainers_1.Wait.forLogMessage("Ready", 1)).

Hi @thake, not sure what you mean here, could you give a code example showing the problem?

One example:
const container = await new LocalstackContainer()
    ..withWaitStrategy(Wait.forLogMessage('<<<Bootstrapping localstack complete>>>'))
    .start();

I would expect that the passed wait strategy will be respected, but instead, it will be overridden on start() with withWaitStrategy(testcontainers_1.Wait.forLogMessage("Ready", 1)).


go1.17 problem

when i use go mod tidy but:
go mod tidy: go.mod file indicates go 1.17, but maximum supported version is 1.16

but i fix go.mod's go 1.17 to go 1.16 i can use go mod tidy success.

You are using go 1.16, so upgrade your golang version may fix your issue.

Many go open source projects support latest or latest two versions of golang, should we follow that rule too?

Likely but I'm not sure if go modules supports defining two.

Release Policy

Each major Go release is supported until there are two newer major releases.  We fix critical problems, including critical security problems, in supported releases as needed by issuing minor revisions (for example, Go 1.6.1, Go 1.6.2, and so on).

Maybe we should not upgrade go version in go.mod so frequently, if go-micro works fine with go 1.15, there is no need to upgrade to 1.17. Users who still develop in lower go versions may unable to use latest go-micro.

We'll keep it in mind for future versions then

You are using go 1.16, so upgrade your golang version may fix your issue.

I use go 1.17 cause the first I said error

Try
go mod tidy -go=1.16 && go mod tidy -go=1.17

Could be a dependency issue, some imported package still under go 1.16, but their dependencies were upgraded to go 1.17.

Could be a dependency issue, some imported package still under go 1.16, but their dependencies were upgraded to go 1.17.

thank you explain~


There is a BUG in stop_loss_condition. After completing several orders, it will not be executed.

Describe the bug
There is a BUG in stop_loss_condition. After completing several orders, it will not be executed.
hummingbot/smart_components/executors/position_executor/position_executor.py

    def stop_loss_condition(self):
        if self.side == TradeType.BUY:
            return self.close_price <= self.stop_loss_price
        else:
            return self.close_price >= self.stop_loss_price

Steps to reproduce
There is a BUG in stop_loss_condition. After completing several orders, it will not be executed.
hummingbot/smart_components/executors/position_executor/position_executor.py

    def stop_loss_condition(self):
        if self.side == TradeType.BUY:
            return self.close_price <= self.stop_loss_price
        else:
            return self.close_price >= self.stop_loss_price

Release version
latest
Type of installation
Source
Attach required files
No response

hi @phpmac Could you please add more details, send your logs and script file here?

Closing issue since no details added


i18n(zh-cn): Update astro-syntax.mdx

Description (required)

Update astro-syntax.mdx

Related issues & labels (optional)

https://github.com/withastro/docs/pull/9888

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

zh-cn
basics/astro-syntax.mdx
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


Theme dependent on another OSGi bundle: how?

As mentioned here, I would like to know how to make a gulp created theme dependent to another OSGi bundle.
It's not clear to me why Liferay 7 have 2 different approaches to create themes: forum thread here.
Any hints?

Hey @caneta, Node.js is not an approved technology for many companies. As such, we need to provide a valid approach for such cases. Being that the only option many companies have, he could decide to just develop the Java-way.
However, we're convinced the frontend world is full of opportunities and innovation and we want to provide a friendly platform for frontend developers as well. We want to see all those new ideas pour into the product and the community.
Is for this reason that we think it's worth invest in both lines of development. One out of necessity, the other out of our desire to expand our developer-base.
Regarding what you mention about OSGi... what would you want to do with that dependency? I assume you want to include some files in your theme? I'd say you could either:

Create a theme hook to download and expand your released artifact, maybe with https://www.npmjs.com/package/mvn-artifact-download so that becomes available
Publish your artifact to npm and consume it as a dependency from package.json

Does this address your questions?

Thank you for your answer about the node development of Liferay 7 theme, now the topic is clearer to me.
About dependency of OSGi I did not intend files inside my theme, but bundles like portlets.
Let's say I have to make my-bundle-big.jar dependent by my-bundle-small.jar. With Gradle I can put inside build.gradle file of my-bundle-big.jar dependencies {compile project(":modules:my-bundle-small")} and I will get in the builded jar, inside MANIFEST.MF file, something like Import-Package: my-package-small: in this way when I deploy my-bundle-big.jar the Liferay OSGi system knows at runtime that I need my-bundle-small.jar as a dependency to use my-bundle-big.jar.
How to do the same thing with a theme developed with Gulp where I do not a have a build.gradle file? How to tell to my-theme.war to be dependent at runtime to, let's say, my-bundle-small.jar?

Hey @caneta, glad to help out clarify this.
So, continuing with your OSGi question. As far as I can tell, our WabProcessor reads from the liferay-plugin-package.properties to generate the proper headers, and will transfer those to your MANIFEST.
I think an example is how we're providing a Provide Capability header in the Marketplace themes
I'm not an expert here, so let me know if this is not what you're looking for so I can do some additional digging ;)

Ooopsies... wrong repo! Fixed now :)
https://github.com/liferay/liferay-portal/blob/7.0.x/modules/apps/frontend-theme-porygon/frontend-theme-porygon/src/WEB-INF/liferay-plugin-package.properties#L11

At the moment I can't try this out, sorry. Close it if you feel to, don't worry.

Thanks @caneta!
I can confirm that adding the following headers to a liferay-plugin-package.properties
Import-Package=com.my.own.import.package
Other-Header=otherHeaderValue

results in the folllowing headers in the registered service

@mwilliams2014, is this documented? Can you please add it if it isn't?
Thanks!

Thank you @jbalsas, it works!
The only thing we had to add was Other-Header=otherHeaderValue, otherwise our theme would not be registered inside the OSGi context.

Hey @caneta, you mean you actually had to add that specific garbage header? 🤔
If so, I think I'll probably need to take a closer look to see what might be wrong there 😂

Sorry about that, the Other-Header=otherHeaderValue was just a placeholder that we removed (not added as I stated before) from the liferay-plugin-package.properties file inside our theme.
What we actually do was modify 2 files: bnd.bnd of the OSGi module we want as a dependency of our theme:
Export-Package: our.dependency.package

and liferay-plugin-package.properties inside our theme adding the actual import (which does not work without the export above):
Import-Package=our.dependency.package

That makes total sense, thanks! 👍


Add example of lambda with template and @section to docs

There is a cryptic paragraph in the Javadocs for @JStacheLambda:
That being said the lambda can ostensibly return a template (and a model that the
 template uses) that then references the section body as a partial by using
 {@link #template()} and then referencing the section body with the partial named
 {@value #SECTION_PARTIAL_NAME}. This allows repeating or wrapping the passed in section
 body. In some other mustache implementations this accomplished with a render callback
 but because templates are compiled statically this is a powerful declaritive
 workaround.

Sounds interesting but makes no sense to me without a full example (Java and template).
(Also note spelling mistake on "declarative".)

For others:
https://jstach.io/jstachio/io.jstach.jstache/io/jstach/jstache/JStacheLambda.html
I guess the big problem is that the documentation just builds on previous examples. I assume you saw this in the Javadoc? :

If we want to duplicate or wrap the results of the lambda we can use lambda templates:

 @JStacheLambda(template="@section}}">{{>@section}}")
 public boolean isEven(int index) {
     return index % 2 == 0;
 }

From the Mustache Manual:

Lambdas
When any value found during the lookup is a callable object, such as a function or lambda, the object will be invoked and passed the block of text. The text passed is the literal block, unrendered. {{tags}} will not have been expanded.
An optional part of the specification states that if the final key in the name is a lambda that returns a string, then that string replaces the content of the section. It will be rendered using the same delimiters (see Set Delimiter below) as the original section content. In this way you can implement filters or caching.

That is why the javadoc says:

Due to the static nature of JStachio, JStachio does not support returning truly dynamic templates which is the optional lambda spec default if a String is returned. That is you cannot construct a string as a template at runtime.

However there is a workaround for most use cases and that is what template() and @segment allows you to do.
Example based on Mustache Manual

Template:

{{#wrapped}}{{name}} is awesome.{{/wrapped}}

Hash:

{
  "name": "Willy",
  "wrapped": function(text) {
    return "" + text + ""
  }
}

Output:

Willy is awesome.

In JStachio you would accomplish the above with
record Model(String name) {

  @JStacheLambda(template="{{> @partial }}")
  public Object wrapped(Object model) {
    // We do not care about the stack for this so ignore the model parameter
    return model;
  }

}

@partial in this case is template/partial with the section body content of:
{{name}} is awesome..
As for the spelling ... I have been meaning to turn spell check back on but I get so many false positives in Eclipse. How is VSCode on that front since you use it IIRC?

@dsyer
Also there is a full code example in the Javadoc on the template parameter:
https://jstach.io/jstachio/io.jstach.jstache/io/jstach/jstache/JStacheLambda.html#template()
I admit its discoverability is poor. Perhaps I will repeat it on the class description as well.


Skip files without meta-data

Now if you put *.md into content folder, that have no title: ... string you will get HTTP 500.
Maybe better way to not skip them but try to get 1st H1 line

Fixed in https://github.com/tieugene/wiki/commit/c74e1b84d0aa86c06c4acd04d1b98948b7308e02


Fix missing space for nested

Just a mirror fix.
Before:

After:

Good catch, thanks for the fix!


Normative: turn useGrouping false for hours & smaller units when style is 2-digits or numeric

Fix https://github.com/tc39/proposal-intl-duration-format/issues/192

TG2 approval: https://github.com/tc39/ecma402/blob/main/meetings/notes-2024-04-25.md#normative-turn-usegrouping-false-for-hours--smaller-units-when-style-is-2-digits-or-numeric-198

I have problem to update this PR to the latest spec text. The spec text got heavily changed by @ben-allen in editorial PR. @ben-allen could you look at your latest spec text and figure out how to address   https://github.com/tc39/proposal-intl-duration-format/issues/192  ?

Updated to set useGrouping to *false* in FormatNumericHour,  FormatNumericMinutes, FormatNumericSeconds. @FrankYFTang quick review?

This PR implemented what the TG2 agreed change and got merged. I think we need someone to bring this PR to the next TG1 to got official consensus for the change inside Stage 3.

@FrankYFTang My bad -- I thought we already had TG1 consensus on the previous version. Will revert this afternoon.

This has reach TC39 consesus on 2024-10-09 meeting


Can not install.

Tabby version : 1.0.215
When click "get"

Could you provide the environment about the machine which you're using?

Imac(Intel)
MacOS: 15.1.1 (24B91)

@geutopia, you could use Tabby Chrome dev tools to see the actual error as to why you can't install the plugin


feat(cli): add alias flags for swa cli commands and options

Introduce alias flags for CLI config options specified by user. This PR resolves #410
Alias flags and Unit tests added for:-

SWA CLI Global options
SWA CLI Start options
SWA CLI Deploy options
SWA CLI Init Options
SWA CLI Login Options
SWA CLI Build Options

@manekinekko Please review some of the tests that I have added in https://github.com/Azure/static-web-apps-cli/tree/ga/src/core/utils/options.spec.ts file as per your convenience so that I know if I'm doing it correctly or not 😅

You are in the right direction 👍

@manekinekko I have finished adding alias flags for all of the commands that have been created so far. Please review the alias flags for the command options and do let me know if they need to be updated.
P.S:- I haven't added alias flags for a few short options like --env, --auto since I thought that they might not be needed as they are short (Do let me know, if needed, I can add them).

@Devansu-Yadav thank you for taking the time to make those changes. Would you mind rebasing your PR on the ga branch one last time? The GA branch is ready, and ee are planning on merging this PR by tomorrow 😊

Sure, I'll make the changes! 👍


Add logic for better ordering of fusion.

This PR adds support for controlling what fusion are performed during tile and distribute. A prepass of the operations (post elementwise fusion) is done to figure out which operations to fuse. The prepass computes a fusion group, each group having a single root. Once the root operation is tiled and distributed, all the producers that are part of the fusion group are pulled into the dispatch region as well. For now a basic heuristic is used to find the fusion groups, but these could be computed through any means, even an external search approach.

Will rebase and send out separate PR for the same.


fix a11y warnings

Updated the CTA button background color since the one used wasn't accessible friendly
Same for the input placeholder text
Updated ResultCard to not nest a Button inside a link since turns out this isn't accessible friendly
CTA btn focus styles

Updated the CTA button background color since the one used wasn't accessible friendly
Same for the input placeholder text

Does this apply only to disabled style?
What was the exact issue with the color? Contrast?
We might want to talk to Mariano to see if we can keep the same color and make slight modifications

@esezen Added .cio-result-card-container with the same styles instead of using the same .cio-result-card-anchor  class for library consumers to have different selectors


Documentation

Do you have any documentation on how to use it in Angular framework?

@nimatullah
https://github.com/plauzul/ng2-izitoast


warp: change default of -b

when option -b is not given as parameter, make -b not hardcoded but halfway between -s and -e , rounded to above

won't do


Ownerissues

Hey,
i copied my ID as the OwnerID in the gap where stands: "OwnerID" but when i start the Bot it says: "Owner not in a voicechannel" buti am in one and i dont get it why he isnt autojoining my channel even when its enabled and there areno bindedchannels.
pls help :c

Can you see your bot in the right side of the user list in discord? Does it update to online when you start the bot?
does the !summon command bring it to your channel?
check your MusicBot\config\options.ini to make sure that autojoin isn't commented out or disabled.
maybe try actually binding it to your channel


Selecting an item after querying resets the query result

Question
Hi, I'm currently on Chapter 8 reading so I apologize in advance if this has already been addressed in later chapters, but I thought to share a fix for a potential issue. I noticed that when one queries in the search input box and selects a result, the list resets back to the state where no queries were performed. I think that there needs to be an update to the ListLinkItem in dashboard.expenses.tsx like so (also for income):
<ListLinkItem
  key={expense.id}
- to={`/dashboard/expenses/${expense.id}`}
+ to={
+ searchQuery ?
+   `/dashboard/expenses/${expense.id}?q=${searchQuery}`
+   : `/dashboard/expenses/${expense.id}`
+ }
   isActive={expense.id === id}
   deleteProps={{
     ariaLabel: `Delete ${expense.title} expense`,
     action: `/dashboard/expenses/${expense.id}`,
  }}>

I'm writing this as a question since I'm new to Remix and I don't know its best practices yet. 😅
By the way, it's a great read so far. Thank you!
Context

Chapter: 8
Page:  148 - 152
https://github.com/PacktPublishing/Full-Stack-Web-Development-with-Remix/blob/main/08-session-management/bee-rich/solution/app/routes/dashboard.expenses.tsx#L50
seems to be the same in future chapters:
https://github.com/PacktPublishing/Full-Stack-Web-Development-with-Remix/blob/main/15-advanced-session-management/bee-rich/solution/app/routes/dashboard.expenses.tsx#L67

Thanks for the great feedback; I appreciate it! 🙏
No, this looks like a great fix and avoids the search query reset. 😎  I will have a look later today to see if there was a reason that we didn't include that in the solution code and give an update!

Yes, this looks like an oversight. In Chapter 15, we keep the pagination index and search query values when searching or navigating the paginated items, but we also don't update the ListLinkItem links. Let's keep this issue open so that folks can find your solution! Thanks for asking the question!


Variable names should be case sensitive per RFC 3986

Description
Related to #1028, and in general, on HTTP request argument keys: The specification for URIs (Uniform Resource Identifiers), defined in RFC 3986: https://tools.ietf.org/html/rfc3986, states that all components of a URI after the domain name are case-sensitive. This includes the query string and its parameters (variables and values).
We are using the variable name as key in several collection. The key is specifically lowercased, for example here: https://github.com/corazawaf/coraza/blob/21c1deb293b3b5d8c5b951db89f670f39100f85a/internal/corazawaf/rule.go#L531 and in the same method it is lowewcased in other places. This change came from https://github.com/corazawaf/coraza/pull/135/commits/998cc1496dc4058fcfcb030a31ccb54da00d3976, and we also have tests that check that things are case insensitive (see https://github.com/corazawaf/coraza/blob/21c1deb293b3b5d8c5b951db89f670f39100f85a/internal/corazawaf/rule_test.go#L260).
Looks like this was done somehow to be compatible with CRS tests. Now, it this is true, then we should do the right implementation ™ , and file a bug report with CRS so they can fix whatever is broken there.
Steps to reproduce
See related issue #1028.
Expected result
ARGS should be case sensitive.
Actual result
They are not.
CC @jptosso @jcchavezs

To add more information, modsec2 uses an apr_table to store variables, and when using apr_table_get to obtain variables back again, the key to search for says "(case does not matter)".

For args, modsec2 uses apr_table_addn, and it will Add data to a table, regardless of whether there is another element with the same key (see https://apr.apache.org/docs/apr/1.5/group__apr__tables.html#gaff9fdbd8f499f0dfb07123230e19ea54).

Implemented in https://github.com/corazawaf/coraza/pull/1059, and tracked in https://github.com/corazawaf/coraza/issues/945 to make it the default behavior in the next major version


Slow training step occasionally due to slow graph flatten

I'm using NNX for a toy transformer on Wikitext-103, and I'm observing that one in every ~100 steps there's a step that takes much much longer (on the order of 2 seconds vs 0.02 seconds). I'm managed to trakc down the culprit with a profile, and it seems that there's sone NNX internal machinery in nnx.split that's taking the bulk of the time:

Is there anything NNX-related that could be causing this to take a long time?

Thanks for posting this @kriscao-cohere! We do have a global context that keeps track of graph references during jit and all other transforms. That might be the first place I would look.
https://github.com/google/flax/blob/e4dad9ca2453b37da77cba790e49b35f4492fde9/flax/nnx/graph.py#L740
Hopefully the update_context context manager is not messing anything:
https://github.com/google/flax/blob/e4dad9ca2453b37da77cba790e49b35f4492fde9/flax/nnx/graph.py#L1046
I'll look into it. But if this is blocking you consider using regular jax.jit as detailed in Performance Considerations for NNX.

Just as a sanity check I ran this simple training code performing a print(nnx.graph.GRAPH_CONTEXT) after each step but all the context stacks are empty. Maybe the python garbage collector is hitting a spike?
training code
import jax
import jax.numpy as jnp
import matplotlib.pyplot as plt
import numpy as np
import optax

from flax import nnx

X = np.linspace(0, 1, 100)[:, None]
Y = 0.8 * X**2 + 0.1 + np.random.normal(0, 0.1, size=X.shape)

def dataset(batch_size):
  while True:
    idx = np.random.choice(len(X), size=batch_size)
    yield X[idx], Y[idx]

class Linear(nnx.Module):
  def __init__(self, din: int, dout: int, *, rngs: nnx.Rngs):
    self.w = nnx.Param(jax.random.uniform(rngs.params(), (din, dout)))
    self.b = nnx.Param(jnp.zeros((dout,)))

  def __call__(self, x):
    return x @ self.w.value + self.b.value

class Count(nnx.Variable):
  pass

class MLP(nnx.Module):
  def __init__(self, din, dhidden, dout, *, rngs: nnx.Rngs):
    self.count = Count(jnp.array(0))
    self.linear1 = Linear(din, dhidden, rngs=rngs)
    self.linear2 = Linear(dhidden, dout, rngs=rngs)

  def __call__(self, x):
    self.count.value += 1
    x = self.linear1(x)
    x = jax.nn.relu(x)
    x = self.linear2(x)
    return x

model = MLP(din=1, dhidden=32, dout=1, rngs=nnx.Rngs(0))
tx = optax.sgd(1e-3)
optimizer = nnx.Optimizer(model, tx)

@nnx.jit
def train_step(model: MLP, optimizer: nnx.Optimizer, batch):
  x, y = batch

  def loss_fn(model: MLP):
    y_pred = model(x)
    return jnp.mean((y - y_pred) ** 2)

  grads: nnx.State = nnx.grad(loss_fn)(model)
  optimizer.update(grads)

@nnx.jit
def test_step(model: MLP, batch):
  x, y = batch
  y_pred = model(x)
  loss = jnp.mean((y - y_pred) ** 2)
  return {'loss': loss}

total_steps = 10_000
for step, batch in enumerate(dataset(32)):
  train_step(model, optimizer, batch)
  print(nnx.graph.GRAPH_CONTEXT)

  if step % 1000 == 0:
    logs = test_step(model, (X, Y))
    print(f"step: {step}, loss: {logs['loss']}")

  if step >= total_steps - 1:
    break

print('times called:', model.count.value)

y_pred = model(X)

plt.scatter(X, Y, color='blue')
plt.plot(X, y_pred, color='black')
plt.show()

Hi @cgarciae, thanks for the updates! And thanks for pointing me to the jax-only pattern for using NNX, I tried it and it eliminated the wait time (and also sped up my experiment loop a lot, but I am doing small model experiments).
As for repro, I only saw it with certain model architectures (mainly Transformers past a certain layer depth), and I tried to repro the slow nnx.split only by running nnx.split by itself 100 times, but there were no unexpected slowdowns. It was only when I did 100 model forward passes (even on dummy data) that I would see the occasional slow step caused by nnx graph traversal.


CDI-578 clarify the behaviour in various error cases

on any error due to rollback and illegalstate:

AFTER_SUCCESS only gets invoked immediately if there is no transaction active
all other observers get invoked immediately

SystemException doesn't get treated in the spec. This indicates that there is some fundamental setup problem. So I think it's better to let the Exception blow out.

Hi Marek, Martin!
I was referring to the Transaction Status.
https://docs.oracle.com/javaee/6/api/javax/transaction/Status.html
The language is loosely taken from the Synchronisation class
https://docs.oracle.com/javaee/6/api/javax/transaction/Transaction.html#registerSynchronization(javax.transaction.Synchronization)
It's perfectly fine to tweak the language to better reflect the outcome.
My main point is that we are technically pretty much bound to what registerSynchronization allows us. And this blows up with Exceptions in certain cases. And we have to either find a good way to handle it or at least define how we fail in those cases

In general I agree with this proposal. Came across this question. When a transaction is marked for rollback then it's in the state when we cannot synchronize. Does it make sense to order transactional observers (something like simulate rollback order) accordingly in this situation?

@tremes That's a good question. I think it makes sense to notify TransactionPhase.BEFORE_COMPLETION first and then AFTER_COMPLETION and AFTER_FAILURE in no defined order.
+1 for tweaking the wording (my proposals are in line comments)

One thing that came to me after yesterday's meeting.  What about the ordering of event that @tremes suggested? The idea was sort of forgotten which is imho shame.
So the question is:
Should we impose the ordering of events being fired in this case?
What would/could the ordering look like:

before completition  -> first
after completition -> second
?) after failure -> this one we needn't define, it can be fired anytime

Why should we do this?

Well, it feels kind of natural to have before event fired actually prior to the after one
It simulates the real transaction (failure) flow
Not doing this will leave another unspecified hole in the spec, while we are at it, we might as well fill this hole now

Yes we missed that point. We need to think about it.
From a user pov it would be nice in certain cases.
Otoh a user could easily use @Priority in CDI-2.0 and be done.
If we define this then we would also need to define the cross effect of the 'implicit' ordering in error case vs @Priority.
So I am fine with leaving this unspecified.
LieGrue,
strub
On Wednesday, 6 April 2016, 9:00, Matej Novotny<EMAIL_ADDRESS>wrote:

One thing that came to me after yesterday's meeting.  What about the ordering of event that @tremes suggested? The idea was sort of forgotten which is imho shame.
So the question is:
Should we impose the ordering of events being fired in this case?
What would/could the ordering look like:

before completition -> first
after completition -> second
?) after failure -> this one we needn't define, it can be fired anytime
Why should we do this?

Well, it feels kind of natural to have before event fired actually prior to the after one
It simulates the real transaction (failure) flow
Not doing this will leave another unspecified hole in the spec, while we are at it, we might as well fill this hole now
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub

I think you might be wrong about the @Priority stuff.
You can use priority to order/sort several after failure observers or several before completion. But you this won't affect  the ordering of observers which observe different phase. Meaning there is no cross effect here.
E.g. @Priority(1) observer for after failure will not be notified before @Priority(2) observer for after failure

@struberg @Priority can only be used to order transactional observers during certain completion phase (i.e. beforeCompletion and afterCompletion). E.g. if you define an AFTER_COMPLETION observer1 with @Priority(1) and BEFORE_COMPLETION observer2 with @Priority(2) then observer2 will be always notified before observer1 even if observers with smaller priority values are called first.

Yes, but in case of those errors they will become kind of 'synchronous'. Thus @Priority will effectively define the order of the observer method invocations.
LieGrue,
strub
On Wednesday, 6 April 2016, 9:47, Martin Kouba<EMAIL_ADDRESS>wrote:

@struberg @Priority can only be used to order transactional observers during certain completion phase (i.e. beforeCompletion and afterCompletion). E.g. if you define an AFTER_COMPLETION observer1 with @Priority(1) and BEFORE_COMPLETION observer2 with @Priority(2) then observer2 will be always notified before observer1 even if observers with smaller priority values are called first.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub

@struberg Yes, but the ordering will be different, e.g. AFTER_COMPLETION observer2 will be notified after BEFORE_COMPLETION observer1.

Thus @Priority will effectively define the order of the observer method invocations.

Not true, this is what I was trying to explain in my comment above. @Priority would only affect ordering of observes within one transactional phase.
In other words, any observer for before completion, no matter what priority it has, would be notified sooner than any other after completition observer.

@Priority will be applied to the observer method not the whole class. Maybe even the parameter, not sure how the last proposal is worded.
I agree that under normal circumstances the order of invocation is depending on the TX event order.
So even if you have an observer1 during=BEFORE_COMPLETION with @Prio 12 an another observer2 with during=AFTER_SUCCESS with @Prio 1 then observer1 will be called before observer2.
IF all goes ok!
BUT: if there is a problem with registrating the Synchronisation then this will be done in the exact order of the @Prio and thus it impacts the order in which the methods will get invoked
On Wednesday, 6 April 2016, 10:56, Matej Novotny<EMAIL_ADDRESS>wrote:

Thus @Priority will effectively define the order of the observer method invocations.
Not true, this is what I was trying to explain in my comment above. @Priority would only affect ordering of observes within one transactional phase.
In other words, any observer for before completion, no matter what priority it has, would be notified sooner than any other after completition observer.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub

BUT: if there is a problem with registrating the Synchronisation then this will be done in the exact order...

The whole point of the original proposal from @tremes  and @manovotn is that we could simulate the behavior a user would expect. Mainly because the transaction is still in progress (although e.g. marked for rollback). The reasoning is very similar to why we skip AFTER_SUCCESS observes - a user would expect this.

@struberg, @mkouba, I'm not sure of this PR status. It seems stuck, what do we need to move on?

@antoinesd @struberg The proposed PR is conceptually OK but:

I believe we should tweak the wording a little bit and rely on JTA terminology
there is a proposal from @tremes  and @manovotn to simulate "expected" ordering  - I think it's ok but I'm also ok if we leave this undefined


Question: why is npm install using --save-dev ?

I notice that the instructions indicate to install the package with npm install --save-dev  but this seems counter-intuitive to me. Wouldn't the library be needed in production as well. Can you please confirm, and I'd recommend amending the docs either way just to avoid any confusion.

Which package are you referring to? SVG framework or one of components?
For most components and for SVG framework you should bundle it, so production file has only one script file to include in web page. It is bundled during development, so it is a dependency only during development. In production it is included in the bundle and bundle does not depend on package anymore.

Hi - I'm referring to the Iconify For React package, as referenced here:  https://github.com/iconify/iconify/tree/master/packages/react
Oh, I see what you mean -- during the build process all the resources are bundled then, is that correct? (Sorry, I didn't know that the build process also assembled fonts/svg in this way).

Also, for SVG framework you can avoid bundling it and use it as dependency, but then you will need to link to SVG framework script in page. It would be a bad idea to link to file inside node_modules in a public document.
Therefore SVG framework script is better to be either included from external website (such as link to code.iconify.design) or copied somewhere. If it is linked as external script and used in bundle as external variable, it is no longer a local dependency and used only during development. If it is copied somewhere, it is done during development, so it is also only a dev dependency.

Yes, you are correct. It is bundled during development and module is not accessed in production (it is accessed as part of bundle, not as external file from node_modules), therefore it is a dev dependency.

Thanks very much!


Service Request by Anna N. Weiskopf about Milestone data sorting

[ ] Qualtrics Service Request Form was received from User
[x] e-mail acknowledging that User's request was received
[ ] Problem NOT RESOLVED
[ ] Problem PARTIALLY RESOLVED
[x] Problem FULLY RESOLVED and Issue is Closed
[ ] Qualtrics Post-Service Request Survey was sent to User

Use comments feature (below) to document:

A clear and concise description of the solution.

A clear and concise description of any alternative solutions or features you've considered.

Any additional context, such as screenshots about the problem.

From: Anna N. Weiskopf<EMAIL_ADDRESS>Sent: Wednesday, August 11, 2021 2:30 PM
To: Donrie Purcell<EMAIL_ADDRESS>david lounsbury<EMAIL_ADDRESS>Nicholas Bove<EMAIL_ADDRESS>Anika Buch<EMAIL_ADDRESS>Cc: Nasim Sabounchi<EMAIL_ADDRESS>Emma Rodgers<EMAIL_ADDRESS>Subject: Questions about IPA tracker
CAUTION: This email comes from an external source; the attachments and/or links may compromise our secure environment. Do not open or click on suspicious emails. Please click on the “Phish Alert” button on the top right of the Outlook dashboard to report any suspicious emails.
Hi Donrie,
Nasim and I were reviewing Cayuga in the IPA tracker and had a few questions.
•	Is there a way to sort the measures, milestones, etc. by 1 IPA strategy specifically under monitoring? For example, Cayuga's MOUD Expansion B1 IPA has 5 strategies listed (B1-EP, B1-ER, etc.) and when IPA monitoring is selected, it lists the monitoring measures for all 5 strategies, rather than 1 at a time.
•	Is there a way to sort milestones by date, alphabetically, by person responsible, etc. under strategy specifications?
•	What is the difference between feedback/QI under monitoring vs under strategy specifications? Where should updated information be entered into?
•	Where should county staff put discontinued IPAs?
Thank you for your help and let me know if you have any questions.
Best,
Anna
--
Anna Weiskopf, MPA
Research Coordinator
Social Intervention Group, HEALing Communities Study
Columbia University School of Social Work
1255 Amsterdam Avenue, Suite 807
New York, NY 10027
Email<EMAIL_ADDRESS>Cell:<PHONE_NUMBER>
Website: https://sig.columbia.edu/

From: david lounsbury
Sent: Wednesday, August 11, 2021 4:56 PM
To: Anna N. Weiskopf<EMAIL_ADDRESS>Donrie Purcell<EMAIL_ADDRESS>Nicholas Bove<EMAIL_ADDRESS>Anika Buch<EMAIL_ADDRESS>Cc: Nasim Sabounchi<EMAIL_ADDRESS>Emma Rodgers<EMAIL_ADDRESS>Subject: RE: Questions about IPA tracker
Importance: High
Hi Anna:
Just chiming in here.
In general, in the Tracker, information entered should be ordered by date (if there is a date field). Otherwise, it presents in the order it was entered.
But if you want to sort things otherwise, I recommend that you download the data you are interested in, and sort/tabulate/graph it that way. What you want to do with Milestones would be easy to do by downloading the data.
Feedback/QI under SPECIFICATION is at the level of the STRATEGY. Feedback/QI in Monitoring is at the level of the IPA.
I would keep a discontinued IPA in the system, but mark it as Discontinued or Stopped in Milestone MONITORING, or whatever the label is. We can add labels to Milestone Status, if need be.
I very much like that you are posing these questions and trying things out. To help us respond quickly to and to manage requests, we created this quick reference site: https://github.com/dlounsbu/NYHEALing-IPAtracker-support
Next time, please bookmark it and try out the Request Service link for us.
Best and thanks,
David

Hi Donrie:
Anything to add here, or can we close this issue for Anna?
DL

From: Donrie Purcell
Sent: Wednesday, August 11, 2021 5:04 PM
To: Anna N. Weiskopf<EMAIL_ADDRESS>david lounsbury<EMAIL_ADDRESS>Nicholas Bove<EMAIL_ADDRESS>Anika Buch<EMAIL_ADDRESS>Cc: Nasim Sabounchi<EMAIL_ADDRESS>Emma Rodgers<EMAIL_ADDRESS>Subject: Re: Questions about IPA tracker
Hi Anna,
I will do my best to address the questions:

As far as I know the IPA tracker does not allow you to sort the data much the way you would (for example) in an excel spreadsheet. However, when the data is downloaded it does so in an excel file format and sorting can be done from there. (I suspect that does not help you because you may not be interested in data analytics but rather making sense of things visually in front of you). Additionally, I can see what you’re referring to in terms monitoring only the strategy that is of interest to you at any particular point in time. Allow me the opportunity to discuss this with Dr. Lounsbury and see if this can be remedied to make this process easier.  I don’t know what Dr. Lounsbury’s perspective is on this as we previously discussed having Measures, Milestones, etc. sorted by date according to the history.
Ideally, all Milestones should be sorted by date in the tracker. If otherwise, let us meet with Dr. Lounsbury as soon as you can so we can discuss further.
In terms of Feedback/QI for Specification- when you’re specifying a smart strategy under an IPA, ideally one is in the planning stage and as such the community collation member will want to speak with the coach to get feedback on the merits of the strategy, etc. Now, in terms of monitoring, we suspect that even after the IPA and the strategy has been approved by the coalition and HCS Members, things are constantly changing and even more so when the strategy may need adjustment this in itself a function of monitoring between the coach and community coalition, which will require some form of feedback. I see Dr. Hunt and Derek consistently engaging in continuous feedback on the merits of strategies already deployed within the communities. Please view these smart strategies as pieces on a chessboard that are Monitored and given constructive feedback from time to time.
In terms of discontinued IPA’s, Now that’s an interesting one. While this is a question for Dr. Hunt, Dr. Lounsbury, Emma, the coaches and so forth. I do believe that within the Monitoring of Challenges some form of documentation (qualitative assessment) will tell you that an IPA is discontinued and the data will reflect same.

Anna and Nasim, I hope that I was of help.
Anna please draft/document these concerns in the system set up by Dr. Lounsbury so he can keep track with the contractor of the database.
And don’t be coy about asking any question or questions about the IPA tracker. That what I am here for, to offer consistent and clear support to you and the team on a whole.
https://github.com/dlounsbu/NYHEALing-IPAtracker-support
To make a request for support, please click here:
https://einsteinmed.co1.qualtrics.com/jfe/form/SV_4TvKdfrpwnbgBrE
Regards
Donrie Purcell, PhD, MPH

@donriepurcell : Just added your very excellent reply to Anna, here, for the Issue card thread!

From: david lounsbury
Sent: Wednesday, August 11, 2021 5:27 PM
To: Anna N. Weiskopf<EMAIL_ADDRESS>Cc: Donrie Purcell<EMAIL_ADDRESS>Nicholas Bove<EMAIL_ADDRESS>Anika Buch<EMAIL_ADDRESS>Nasim Sabounchi<EMAIL_ADDRESS>Emma Rodgers<EMAIL_ADDRESS>Subject: RE: Questions about IPA tracker
Hi Anna:
Unless I am not following you, when you EDIT a SPECIFIED Strategy, you only see information for that strategy. You have to navigate to different components,  of course, to see all that has been entered.
When you switch to IPA MONITORING, then you see all the reported data for all the components of all the SPECIFIED Strategies for that IPA. Once you enter all prompted MONITORING data, at the bottom part of the screen you will see that the MONITORING data is ordered by Reporting Period.
And, again, we can help you download the data so that you can sort, filter, tabulate or graph information the way you need/want.
Hope this helps!
Best,
David

From: david lounsbury
Sent: Wednesday, August 11, 2021 6:29 PM
To: Anna N. Weiskopf<EMAIL_ADDRESS>Cc: Donrie Purcell<EMAIL_ADDRESS>Nicholas Bove<EMAIL_ADDRESS>Anika Buch<EMAIL_ADDRESS>Nasim Sabounchi<EMAIL_ADDRESS>Emma Rodgers<EMAIL_ADDRESS>Subject: RE: Questions about IPA tracker
Hi Anna:
I think I understand more about what you are asking now. I think it would be relatively easy to try to sort IPA Monitoring data by Strategy within Measures, Milestones, etc.
And we can also look into filtering, so that only selected strategies would be displayed in IPA MONITORING. Adding this feature may be more complicated, but we will look into it.
For now, we can help you use the Data Download feature to accomplish this.
Keep bringing your questions, concerns, ideas!
Best and thanks,
David

@donriepurcell
Let's discuss how to present this to Jeff.

We just need to ask that, for IPA Monitoring of Milestones, the summary table rows are sored first by IPA/Strategy code, and then by (start date).
Thoughts?

Also, @donriepurcell , maybe we should ask Jeff to set up a GitHub account, so that we can add him to certain Issue Cards. Would that help us streamline things?

Hi Profe
We can meet any time you like. I can working on get tracker stuff for ulster counties
From: David W Lounsbury @.>
Date: Tuesday, August 17, 2021 at 1:37 PM
To: dlounsbu/NYHEALing-IPAtracker-support @.>
Cc: Donrie Purcell @.>, Mention @.>
Subject: Re: [dlounsbu/NYHEALing-IPAtracker-support] Service Request by Anna N. Weiskopf about Milestone data sorting (#10)
CAUTION: This email comes from an external source; the attachments and/or links may compromise our secure environment. Do not open or click on suspicious emails. Please click on the “Phish Alert” button on the top right of the Outlook dashboard to report any suspicious emails.
@donriepurcellhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fdonriepurcell&data=04|01|donrie.purcell%40einsteinmed.org|a34a5589b01c4906480008d961a5af82|9c01f0fd65e040c089a82dfd51e62025|0|0|637648186511563972|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=5hHCC01lptrVSfOJ5NyHMY1m4ImpUU7cpzl1jrXxcyY%3D&reserved=0
Let's discuss how to present this to Jeff.
[MONITORING Milestones clip]https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fuser-images.githubusercontent.com%2F20574023%2F129773936-9ff1c5a6-bda1-4316-81ef-c968266c610e.JPG&data=04|01|donrie.purcell%40einsteinmed.org|a34a5589b01c4906480008d961a5af82|9c01f0fd65e040c089a82dfd51e62025|0|0|637648186511573964|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=EyikqKm0EY8StmMC2v0gy1N8%2FuEn%2BuD6xEsj%2F1zj48Y%3D&reserved=0
We just need to ask that, for IPA Monitoring of Milestones, the summary table rows are sored first by IPA/Strategy code, and then by (start date).
Thoughts?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fdlounsbu%2FNYHEALing-IPAtracker-support%2Fissues%2F10%23issuecomment-900500166&data=04|01|donrie.purcell%40einsteinmed.org|a34a5589b01c4906480008d961a5af82|9c01f0fd65e040c089a82dfd51e62025|0|0|637648186511573964|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=MVRSV7oeWas2vPG9xCEMqWFxL33aLXCG0qc5mBviKuQ%3D&reserved=0, or unsubscribehttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FATJKBBLOLW62XIVFZXSQQ6TT5KM5RANCNFSM5B7O2EFA&data=04|01|donrie.purcell%40einsteinmed.org|a34a5589b01c4906480008d961a5af82|9c01f0fd65e040c089a82dfd51e62025|0|0|637648186511573964|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=dd3sLCQrOa7nwXjK7hVNdhRIEWyyFFRcFxknd%2FdbJEk%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01|donrie.purcell%40einsteinmed.org|a34a5589b01c4906480008d961a5af82|9c01f0fd65e040c089a82dfd51e62025|0|0|637648186511583957|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=1FqaGUUwMvz1M57obBjj10w7fn9Jl0XUYwQuztvN8Rs%3D&reserved=0 or Androidhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26utm_campaign%3Dnotification-email&data=04|01|donrie.purcell%40einsteinmed.org|a34a5589b01c4906480008d961a5af82|9c01f0fd65e040c089a82dfd51e62025|0|0|637648186511583957|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=76o9EmruRZ2L14oraQKyRnCQy5vZKOInAwKNfZgncgg%3D&reserved=0.

I am in meeting all afternoon, through 6:30pm. Sorry.
Let's go ahead and ask Jeff to add this sorting feature in IPA Monitoring. I think that we should ask Jeff to have all summary data tables in IPA Monitoring sort by IPA/Strategy name (usually the first table column) and then by the date field.

I am in meeting all afternoon, through 6:30pm. Sorry.
Let's go ahead and ask Jeff to add this sorting feature in IPA Monitoring. I think that we should ask Jeff to have all summary data tables in IPA Monitoring sort by IPA/Strategy name (usually the first table column) and then by the date field.

@donriepurcell At your earliest convenience, let’s have Jeff make this enhancement. Thanks

@donriepurcell
Let's discuss how to present this to Jeff.

We just need to ask that, for IPA Monitoring of Milestones, the summary table rows are sored first by IPA/Strategy code, and then by (start date).
Thoughts?

@jbazinet1111 If you can ADD the feature to sort these history tables by IPA/Strategy name AND date? THANKS

From: Jeff Bazinet<EMAIL_ADDRESS>Sent: Wednesday, August 18, 2021 12:54 PM
To: Donrie Purcell<EMAIL_ADDRESS>david lounsbury<EMAIL_ADDRESS>Subject: Baseline person breakdown
CAUTION: This email comes from an external source; the attachments and/or links may compromise our secure environment. Do not open or click on suspicious emails. Please click on the “Phish Alert” button on the top right of the Outlook dashboard to report any suspicious emails.
Ok, we have figured out the issue and it pertains to the rendering of the grid that shows the measures – in both Specification and Monitoring.
I’d like to propose a bit of a graphical change. We simply have too much data to display in the grids.
I’d like to change the grid into a list box, showing the measures, and clicking on one of the measures will show all the data for that measure. The add/edit/delete process will stay the same.
The drawback is that while you can see all the measures in the list, you can’t see all the additional information without clicking on one of the measures.
Let me know if this works. I think it’s probably the best bet given the screen real estate we’re dealing with, but we can force it if you want to keep it the same.
This electronic message is intended to be for the use only of the named recipient, and may contain information from the North Country Initiative that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or by calling the North Country Initiative at<PHONE_NUMBER> x 23, and delete and destroy all copies of this message.

From: Jeff Bazinet<EMAIL_ADDRESS>Sent: Wednesday, August 18, 2021 12:54 PM
To: Donrie Purcell<EMAIL_ADDRESS>david lounsbury<EMAIL_ADDRESS>Subject: Baseline person breakdown
CAUTION: This email comes from an external source; the attachments and/or links may compromise our secure environment. Do not open or click on suspicious emails. Please click on the “Phish Alert” button on the top right of the Outlook dashboard to report any suspicious emails.
Ok, we have figured out the issue and it pertains to the rendering of the grid that shows the measures – in both Specification and Monitoring.
I’d like to propose a bit of a graphical change. We simply have too much data to display in the grids.
I’d like to change the grid into a list box, showing the measures, and clicking on one of the measures will show all the data for that measure. The add/edit/delete process will stay the same.
The drawback is that while you can see all the measures in the list, you can’t see all the additional information without clicking on one of the measures.
Let me know if this works. I think it’s probably the best bet given the screen real estate we’re dealing with, but we can force it if you want to keep it the same.
This electronic message is intended to be for the use only of the named recipient, and may contain information from the North Country Initiative that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or by calling the North Country Initiative at<PHONE_NUMBER> x 23, and delete and destroy all copies of this message.

@jbazinet1111 I think this is a good solution. I personally do not mind the long history tables, but I think users will appreciate what you are proposing! How many hours would you like to do this work?

@jbazinet1111
Any need for feedback on this request? When might we be able to beta test?
Best,
David

@donriepurcell and @jbazinet1111
Any updates for this feature, too? If we need to discuss, please reach out.
Best,
DL

The IPA Monitoring lists are now sorted by strategy and then date.

The IPA Monitoring lists are now sorted by strategy and then date.

Excellent!
@Donrie, please update Ana about this! Maybe Monika, too!

The IPA Monitoring lists are now sorted by strategy and then date.

Excellent!
@DONRIE, please update Ana about this! Maybe Monika, too!

@donriepurcell if all looks good, at your convenience, you can close this issue.

From: david lounsbury
Sent: Wednesday, September 8, 2021 8:20 PM
To: Anna N. Weiskopf<EMAIL_ADDRESS>Cc: Donrie Purcell<EMAIL_ADDRESS>Nicholas Bove<EMAIL_ADDRESS>Anika Buch<EMAIL_ADDRESS>Nasim Sabounchi<EMAIL_ADDRESS>Emma Rodgers<EMAIL_ADDRESS>Subject: RE: Questions about IPA tracker
Hi Anna:
Milestones are now sorting by Strategy Name.
This should improve use of this part of the Tracker. Let us know if this fix is working for you.
Best and thanks,
David


Thoughts about throughput benchmarks fairness

After reading https://github.com/scalalang2/go-cache-benchmark/issues/4 , especially @maypok86’s comment. I think below points should be clarify for fairness

CPU cores choosing (8/16 cores or higher)
GitHub actions environment (busy github runners)
Test real-world/bigtech workload(alibaba?)

Background: the motivation of phuslu/lru development is for web/http cases, so

CPU cores choosing (8/16 cores or higher)

Background: I chosen 8/16 cores for benchmark because it's the common case(e.g. containers specification) and a "comfort zone" of go application, see https://github.com/phuslu/lru/issues/13 https://github.com/golang/go/issues/65064 https://github.com/panjf2000/gnet/issues/558

GitHub actions environment (busy github runners)

as @maypok86 pointed, it's unfair for cache-friendly implementation. But it still similar with our production environment(k8s workers), and the performance results index seems stable, so I kept/respected the result. We should/need append the disclaimer about this "unfairness"

Test real-world/bigtech workload(alibaba?)

Still have no good ideas, seems it's hard do this in github actions or my arm vps.

the draft:
Disclaimer: This was tested on the busy GitHub runners with 8 CPUs and may be very different from your real environment.

For comment of https://github.com/scalalang2/go-cache-benchmark/issues/4#issuecomment-1889734526 ,

To work around this, let's view a cache as a black box with a certain size in bytes (memory usage) and ignore any internals. Now you can create all test candidates with roughly the same memory usage and compare QPS and HITRATE. With this, you eliminate one of three variables, which makes comparison easier.

I have similar idea. In this scenario I guess phuslu/lru will significantly increases hit ratio and a bit deceases the throughputs.

Oh, I never thought I'd come back to this.
Throughput

I never meant that your benchmarks are not fair to any implementation. I was just trying to make them a little better and find out why one or the other was done.
Unfortunately, I do not know how GitHub Runners work (like the vast majority of people) and the problem I was talking about is that I did not even get a similar distribution to yours either locally or on a virtual machine. For example, Cloudflare has shown much better results, and your implementation has not outperformed the others convincingly enough. And I have given several theories as to why this might happen. This is most likely caused by fewer available cores than needed, or by using only a certain percentage of vCPUs.
Yes, 8-16 cores are usually the best choice. Sometimes you want to look at the behavior with more cores and more contention, but it's better to check the ability to scale across cores rather. So that there are no such problems as with epoll on large machines.

Memory consumption

I have similar idea. In this scenario I guess phuslu/lru will significantly increases hit ratio and a bit deceases the throughputs.

The idea is really not a bad one, although I have a suspicion that the results of such benchmarks can easily be misinterpreted, but it's worth a try.
Unfortunately, I have a feeling that the author of go-freelru does not understand the difference between the memory cost of metadata and the storage of keys and values. For some reason, he uses principles from dedicated cache servers (redis, memcached). There really is only one limitation - the amount of available RAM (with its total amount). Redis users do not care how many entries will be stored, only the total RAM consumption is important. BUT when you don't support cost-based eviction, trying to rely on total RAM consumption is a terrible mistake.

go-freelru stores a much larger number of entries than the user requests. I already wrote about this in the previous thread, I think everything is clear here. All this will end up consuming too much memory. Still, the total size of the key and value very often exceeds 100-150 bytes, which greatly exceeds the size of the metadata.
But why it was necessary to put x4 in benchmarks, I did not understand at all... After all, the cost of real data there will be simply huge. It looks like he was confused by the memory consumption benchmarks, but they specifically gauge the overhead and everything is relatively normal there. Although x4 is still too much, okay, I don't understand. And it had to be fixed with the next commit. :)

What is an onheap cache?
A small digression about onheap, offheap caches, dedicated cache servers.
Offheap caches and dedicated cache servers can, in principle, be considered together here. They have quite a few specific characteristics.

Both can store tens of gigabytes of data.
The cache server is usually slightly slower due to network connection costs. But here you need to remember that usually the application is very close to the cache server and there are many ways to reduce network costs (pipelining, plain tcp, etc).
When the cache reaches large sizes, the question arises about data consistency. The cache servers do it for you. And in the case of offheap caches, you will have to write your own degraded version of memcached/redis.
Since such caches often reach large sizes, it is usually possible to use simple eviction policies (such as lru, fifo, etc.). Since it will simply be very difficult for an attacker to build a scan of this size (but it is still possible), and you will compensate a bit for the disadvantages of the eviction policy by storing a large number of entries.

For example, the solutions from the bigcache article are likely to raise a large number of questions in the system design section of the interview. It looks like they didn't need the offheap cache at all and they just came up with a problem for themselves, which they heroically solved. The offheap cache in VictoriaMetrics looks like a good solution, but it's more like the main storage there.
Onheap caches are usually used in a slightly different way.

The size is usually small (I have not seen more than 10 million records or about 1 GB).
Much faster than cache server or offheap caches. Which allows them to be used in places where cache misses cost little.
It is much easier to break (to the attacker and not only), so more advanced eviction policies are often used.
A bundle in the form of an onheap cache and a cache server often works well. Onheap cache protects against load spikes and reduces latency, the server allows you to store a huge amount of data.

So I usually think of onheap caches as the L1 cache of the processor. Small and super fast :).
Hit ratio and GC
I noticed that you added a GC pause check. That's cool! But unfortunately there are several pitfalls.

Most of the GC stages run parallel to the main program. runtime.GC will perform the entire sequence of actions.
For some reason, many people do not think about it, but cache misses cost so much that these delays are very small.

In reality, the results will be worse, but let's count on a scenario that is beneficial to lru for credibility.

GC usually starts every two minutes we will count the losses during the same time for convenience.
Usually the difference between the hit ratio of lru and the hit ratio of more advanced eviction policies is 5+%. Let's assume that the difference is really only 5%.
RPS. The larger it is, the more profitable it is for caches with an advanced eviction policy, but I don't want to take a very small one either. Let it be 50 rps, even that should be enough.
Latency of the cache miss. Let's take 5ms as if redis is behind us with a huge number of stored items. In reality, this is often 100+ms.

In total we have:
rps = 50
latency = 5ms
hit_diff = 5%
lost = rps * 2 * 60 * (hit_diff / 100) * latency = 50 * 2 * 60 * (5 / 100) * 5ms = 1.5s aka 1500ms
P.S. I'm sorry for these tons of bullshit.

@phuslu if you implement a sharded mmap option (per cpu core with global mmap mutex using atomic variable), this will not be an issue at all and will be the fastest implementation in golang

The discussion in https://github.com/maypok86/otter/issues/72 can be a supplementary material for

why choose and respect  8/16 cores
Due to my work experiences and golang runtime limiation(not only epoll issues, but also NUMA support)
why phuslu/lru foucs memory usage/gc overhead
Because in that moment, in-memory cache acts like as a fixed-size hashtable, memory usage/gc overhead begin show their impacts.
why phuslu/lru has no evict policy
Like above, evict policy is not a must-have feature in that case, cut it off to decease memory usage.

@maypok86 sorry for reply late, because your said above is totally correct and I agree it almost all. This referred issue describes a less common problem that I happened to encounter before and it also affected the evolution of phuslu/lru, so I jumped in and discussed it a lot and quoted it here.


Add ecobee room sensor and smart sensor

Adds the ecobee smart temperature sensor and older room temperature sensor battery types.

Thanks


Sodiumoxide 0.2.1

New version of sodiumoxide up from 0.0.16 to 0.2.1
Had to unpin the libc version in wrappers/rust because of a conflict with libsodium-sys. Now using the same version as libsodium-sys

Don't know why the build failed. cargo build on my Ubuntu 16.04 machine - native and in the libindy/ci/ubuntu.dockerfile container.

Maybe first merge https://github.com/hyperledger/indy-sdk/pull/1585

https://build.sovrin.org/job/indy-sdk/job/indy-sdk-ci/job/PR-1601/7/execution/node/155/log/

This PR is superseded by https://github.com/hyperledger/indy-sdk/pull/1668

This PR is superseded by https://github.com/hyperledger/indy-sdk/pull/1668


Introducing Devbox Guru on Gurubase.io

Hello team,
I'm the maintainer of Anteon. We have created Gurubase.io with the mission of building a centralized, open-source tool-focused knowledge base. Essentially, each "guru" is equipped with custom knowledge to answer user questions based on collected data related to that tool.
I wanted to update you that I've manually added the Devbox Guru to Gurubase. Devbox Guru uses the data from this repo and data from the docs to answer questions by leveraging the LLM.
In this PR, I showcased the "Devbox Guru", which highlights that Devbox now has an AI assistant available to help users with their questions. Please let me know your thoughts on this contribution.
Additionally, if you want me to disable Devbox Guru in Gurubase, just let me know that's totally fine.

Hi again,
Have you had a chance to check this out?
Additionally, I’d like to update you on the release of the Maintainer Panel feature on Gurubase. With this panel, you can add, remove, or update data sources, as well as change the logo and more. You can find the details here.
In the near future, I’m planning to include analytics insights in this panel, such as the number of questions asked, the most frequently asked ones, and more. I’ll be sure to update this thread once it’s available. However, in case I miss it, I highly recommend joining our Discord channel to stay updated.
If you’d prefer that I don’t update this thread anymore, please let me know.


CudNN failing with .into_dtype(DTyper::F32) from BF16

Running a convolutional model in BF16 precision seems to be resulting in the error
Error: CudnnError(CUDNN_STATUS_BAD_PARAM)

the specific line that appears to be causing this is
initial_loss.to_dtype(DType::F32)?.to_scalar::<f32>()?;

converting from the BF16 loss to F32 to use as a scalar. This also only occurs when cudnn is used: this works fine with only cuda

Cuda is an asynchronous api so it may well be the case that the error actually occured earlier (my guess would be that it was in a conv2d so that cudnn is involved). You can set CUDA_LAUNCH_BLOCKING=1 to get a better sense of where the error is coming from.
As to why the error would occur, if it's a conv2d maybe the kernel is using bf16 whereas the input is using f32 or the other way around?


feat: UI Improvements for the photo gallery

Hi everyone!
Here are a few changes to the photo gallery.
🎥 https://github.com/user-attachments/assets/91d52794-a613-4ee7-97ed-f0a8ff30a38e

The "Take a picture" button (was in the FAB) is moved into the AppBar

The language picker is also in the AppBar

The grid layout is changed

The indicator on the left is green (up-to-date photo), orange (maybe outdated), red (no picture available)

The type is on top and not below

The text is not shrunk

The image is not centered anymore and uses the same effect as the product page.

File changes:

product_title_card.dart: everything related to the product picture is removed from this file
smooth_product_image.dart: the code from product_title_card.dart + new features
product_cards_helper.dart: the "ProductAppBar" can have actions and a bottom widget
product_image_widget.dart: in the grid, the obsolete icon is now orange
product_image_gallery_view.dart: use the new layout
product_image_viewer.dart: add a Hero animation
app_icons.dart: two variants for the CircledArrow
smooth_theme.dart: instead of Theme.of().extension<>…!, we can use context.extension<>()
smooth_app_bar.dart: the foreground color was not passed correctly to the title

Codecov Report
Attention: Patch coverage is 2.59259% with 263 lines in your changes missing coverage. Please review.

Project coverage is 6.90%. Comparing base (4d9c7fc) to head (d79a779).
Report is 472 commits behind head on develop.

Files with missing lines
Patch %
Lines

.../lib/cards/product_cards/smooth_product_image.dart
0.00%
144 Missing :warning:

.../lib/pages/product/product_image_gallery_view.dart
0.00%
78 Missing :warning:

packages/smooth_app/lib/resources/app_icons.dart
4.76%
20 Missing :warning:

...pp/lib/cards/product_cards/product_title_card.dart
0.00%
13 Missing :warning:

...ooth_app/lib/pages/image/product_image_widget.dart
0.00%
2 Missing :warning:

...ib/pages/product/product_image_swipeable_view.dart
0.00%
2 Missing :warning:

...th_app/lib/pages/product/product_image_viewer.dart
0.00%
2 Missing :warning:

packages/smooth_app/lib/themes/smooth_theme.dart
0.00%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           develop   #5852      +/-   ##
==========================================
- Coverage     9.54%   6.90%   -2.65%
==========================================
  Files          325     423      +98
  Lines        16411   23352    +6941
==========================================
+ Hits          1567    1612      +45
- Misses       14844   21740    +6896

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


fix(auth): fix problem with auto login/refresh

What this PR does 📖

Fix a problem with auto login/refreshing due to changes in #296

It caused warp not being initialized when refreshing
This change also makes it so we go directly to chat instead of unlock -> chat during auto login
Potentially fixes following issues? (Depends on if those were created before or after #296)

#297
#298
#299
#300

The automated test showing as failed is expected for this PR, because right now asserts that user is redirected to Enter Pin screen when reloading page with enabled stay unlocked. I already added a PR in automated tests repo that will address this test once this PR is merged


Update license years

Currently, license years are set to 2020-2021. These should be updated application-wide to 2020-present.

Closed in ed76b93c0abc6b7a2642eb9d08af4a1b3f985e09.


Adding tests for all PennyLane transforms

This PR adds unit tests for all PennyLane transforms. This PR addresses [sc-72626].

Thanks for adding this, I will take a closer look in a bit, but first @mlxd , what's the guideline on large batches of xfailed python tests like this? Do we prefer skip over xfail, to save CI execution time?
For context, @willjmax is going over the core PL transforms and testing whether qjit works with them or not. If they don't work, a reason is noted in this testing file.


Astropy is not optional in pulsar.py

The Pulsar class imports astropy. Astropy is not a required dependency, so this should not be allowed. It's only necessary in the PintPulsar class, at which point PINT is installed which depends on astropy. Libstempo does not

Fixed by #368


Updating?

What would it take to get this updated to the latest littlefs?
I'm new to compiling with emscripten and don't understand what files in this repo are generated or what steps to take to build it again.

Hi @jmdevy, sorry about the incredibly late response.
At this point I'm not sure it's worth updating this repo. When this project was created emscripten was the best way to execute C in the browser, but nowadays this can be done much more easily with WebAssembly.
At some point it would be nice to have littlefs in WebAssembly, if anything for a website demo, but it's low priority at the moment.


Gif doesn't work with --chafa

Description
Not sure if this is intentional or not, but using --chafa /path/to/gif just displays nothing, but it does move the text according to the gif's dimensions.

[x] Does this issue still occur in the master branch? (Required if issue)

Neofetch version
Neofetch 7.0.0
Screenshot
have a video instead
https://user-images.githubusercontent.com/66117568/143385322-47d7287d-0b00-4cad-b10a-3d35f4ac00db.mp4
Config file
# Neofetch Themes
# Configuration made by Chick

# See this wiki page for more info:
# https://github.com/dylanaraps/neofetch/wiki/Customizing-Info

print_info() {

    info "   ${cl6}   " distro
    info "   ${cl5}   " cpu
    info "   ${cl4}   " kernel
    info "   ${cl1}   " wm
    info "   ${cl7}   " shell
    info "   ${cl3}   " term
    info "   ${cl2}  塞" memory
    info cols
}

kernel_shorthand="on"
distro_shorthand="off"
os_arch="off"
uptime_shorthand="on"
memory_percent="off"
package_managers="on"
shell_path="off"
shell_version="on"
speed_type="bios_limit"
speed_shorthand="on"
cpu_brand="off"
cpu_speed="off"
cpu_cores="off"
cpu_temp="off"
gpu_brand="off"
gpu_type="all"
refresh_rate="on"
gtk_shorthand="on"
gtk2="on"
gtk3="on"
public_ip_host="http://ident.me"
public_ip_timeout=2
disk_show=('/')
music_player="spotify"
song_format="%artist% - %title%"
song_shorthand="off"
colors=(distro)
bold="on"
underline_enabled="on"
underline_char="-"
separator=" "
color_blocks="off"
block_range=(0 15) # Colorblocks

# Colors for custom colorblocks
magenta="\033[1;35m"
green="\033[1;32m"
white="\033[1;37m"
blue="\033[1;34m"
red="\033[1;31m"
black="\033[1;40;30m"
yellow="\033[1;33m"
cyan="\033[1;36m"
reset="\033[0m"
bgyellow="\033[1;43;33m"
bgwhite="\033[1;47;37m"
cl0="${reset}"
cl1="${magenta}"
cl2="${green}"
cl3="${white}"
cl4="${blue}"
cl5="${red}"
cl6="${yellow}"
cl7="${cyan}"
cl8="${black}"
cl9="${bgyellow}"
cl10="${bgwhite}"

block_width=4
block_height=1

bar_char_elapsed="-"
bar_char_total="="
bar_border="on"
bar_length=15
bar_color_elapsed="distro"
bar_color_total="distro"

cpu_display="on"
memory_display="on"
battery_display="on"
disk_display="on"

image_backend="chafa"
#image_source="$HOME/"
image_size="auto"
image_loop="off"

ascii_distro="ubuntu_small"
ascii_colors=(distro)
ascii_bold="on"

thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
crop_mode="normal"
crop_offset="center"

gap=2

yoffset=0
xoffset=0

stdout="off"

Verbose log

Run neofetch -vv 2> neofetchlog
Upload the contents of neofetchlog to pastebin, gist or equivalent.

neofetchlog.txt

This looks to be a configuration issue as neofetch is falling back to ascii mode.
Also see #1392


Analysis falters with x86 code that has pattern "push addr; ret" in a lot of functions

While analyzing 94d3c854aadbcfde46b2f82801015c31.exe_.zip, I observe we bail out on a lot of functions relying on analysis.limits.maxFunctionUpdateCount. A closer look at the code reveals the following pattern at the end of almost all functions:

We actually handle such a case when it occurs on individual functions. However, since every function has it, the analysis falters and do not handle it gracefully. If I force the analysis of the function, the analysis will get into an infinite loop

Another relevant sample: 3b13b6f1d7cd14dc4a097a12e2e505c0a4cff495262261e2bfc991df238b9b04.dll_.zip
The push+ret pattern at 0x10009ce9 causes some issue, but the analysis is eventually able to finish on it (instead of bailing out on a limit), so it should be fine. Also the analysis took 206 seconds to run which is not too bad

Same with this binary:
9b7ccaa2ae6a5b96e3110ebcbc4311f6.dll_.zip

If I force analysis of sub_100142a0, there will be an analysis loop. And I see functions getting created and removed repeatedly, which might be related to our unused auto function removal


--smart support removed from Pandoc

I have a not-too-recent version of Pandoc (2.2.1) on my machine, but when I try to use site-generator with it, pandoc fails, complaining that the --smart option has been removed:
Generating site...
Writing page index.html
Error: Subprocess with command "pandoc --to=html5 --from=markdown --smart /var/folders/..."
 exited with error code 2

And when I try to run the pandoc command manually:
--smart/-S has been removed.  Use +smart or -smart extension instead.
For example: pandoc -f markdown+smart -t markdown-smart.
Try pandoc --help for more information.

As a temporary workaround, I just prevented site-genetator from generating --smart at https://github.com/AlexCharlton/site-generator/blob/4ffeb006666cc1435bf7b9dff7f777bcec90ed4c/src/content.lisp#L242 and everything work as expected.
I don't know what a proper fix would be since the function seems to map on the supported arguments one by one, and here generating the correct output format depends on both :markup and :smart. An alternative solution would be to drop :smart and instead require the user so specify something like markdown+smart as :markup.

I was able to work around this by setting :smart to false and :markup to markdown+smart.

I was able to work around this by setting :smart to false and :markup to markdown+smart.


i have followed the steps and it has not worked

Problem encountered on https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/edit
Operating System: windows
Provide details about the problem you're experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.

i get stuck on when it says to input the time. do i need to manually input the time it is righ then or does iut correct its self


Validated fields not supporting Unicode?

When using CJK characters in fields with x-www-form-urlencoded, a 500 Internal Server Error occurs.
I didn't put slug in options, so it appears it isn't validated, allowing me to use CJK characters there.

@OverflowCat there's two distinct issues here right?

Support for Unicode so we can get CJK
Validation not happening for something?

Nope, I mean validation may cause such a bug. I found that Unicode cannot be used in fields, but it can be in options. Additionally, this issue persists when submitting via application/json, so it's not related to the submission method used.
Body:
{
  "fields": {
    "name": "hello世界",
    "email"<EMAIL_ADDRESS>    "message": "Hello"
  },
  "options": {
    "slug": "test/page"
  }
}

Remove 世界 in the json and it should work.
Config file:
comments:
  allowedFields: ["name", "email", "url", "message", "twitter", "activitypub"]

  branch: "src"

  commitMessage: "comment: add staticman data"

  filename: "entry{@timestamp}"

  format: "yaml"

  generatedFields:
    date:
      type: date
      options:
        format: "timestamp-seconds"

  moderation: true

  name: "my-site.com"

  path: "comments/{options.slug}"

  requiredFields: ["name", "email", "message"]

  transforms:
    email: md5

Thanks.
Let me check in on this. I think I should support unicode either way otherwise we won't get emoji support either.
For options.. that's an interesting one because I referenced the original staticman implementation and there wasn't much details around options except in the getting started docs.
Both the fields and options should be getting validated and escaped. Not sure why the behaviour is different.
Thanks for the info. I'll look into it in a bit.

UTF8 support added in:
https://github.com/zanechua/comment-worker/commit/4f88f2869e6fc3915fbbead956fc5eeab582d48d


Liftoff not compatible with Cocoapods v1.0.0

Note

:exclusive => true is no longer supported
link_with is now abstract_target

As per Cocoapods v1.0.0 Podfile

Thanks for the report! I don't suppose you'd be willing to open a PR to update the default Podfile?

Just did! #268

Fixed in #268


fix: add missing override.env for open-webui

resolves #72

Hey, thank you so much!
Was in my plans for tomorrow


FileNotFoundError: [Errno 2] No such file or directory: '/home/runner/.cache/pip/pool/de/53/e4/user_cookies.json

Getting the following error message while attempting to run the API through Replit after following all installation steps. Working on local machine, however not working on any server.

Fixed by instantiating and authenticating via command prompt as opposed to manually inputting as connectsid & _crsf variables


KismetDebuggerMod uses C++20 but the code requires C++23

We've updated UE4SS to use C++23, however that doesn't propagate to mods because we haven't updated the xmake rule ue4ss.mod to reflect that change.
The ue4ss.mod rule still has target:set("languages", "cxx20"), as a result, we get this warning when building KismetDebuggerMod:
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.37.32822\include\expected(12): warning STL4038: The contents of <expected> are available only with C++23 or later.

Fixed by #680


Ablation study on S3DIS

Thank you for releasing the source code of your excellent work :)
I found that there is a problem of center point filling in ballquery, which makes  it possible that some points in maxpooling redundant. Have you done the ablation study of hyperparameters nsample and radius in Ballquery on S3DIS data set? If so, could you share the results of the experiment?

Thank you for your interest in our work! Unfortunately, I haven't conducted any ablation experiments related to Ballquery hyperparameters. As mentioned in the Readme, our code repository is built upon the PointNeXt code repository, and we inherited all experiment settings and hyperparameters from PointNeXt.

Thanks for your reply.


[BUG] DropDown toggle

Describe the bug
Right now, when we click on any part of the screen and if the dropdown is expanded already, it doesn't close.
To Reproduce
Add a dropdown and try expanding and closing by tapping on different areas on screen
Expected behavior
DropDown should collapse as soon as the user hits anywhere on the screen(If user hits on the dropdown view itself, it is handled)
Smartphone (please complete the following information):

Device: iPhone 11 Pro Max simulator
OS: 13.3
Xcode: 11.3.1

Hello there, I am working in this. Can you assign me this task ?

Thank you for the interest @FranklinSamboni
Assigned
Contact me if you need anything else. Let me know the progress as well if you could, whenever necessary. Thanks!

Done :D, if you have some feedback let me know. I also see a refactor code task running so I tried to change few things as possible to don't generate conflicts.

Is this solved or not as the tag is available?

Hey @devanshimodha
There’s a recent update in the ongoing pr, so have to review that before I can conclude the functionality. Please take a look at other issues and I’ll be a few new issues soon as well! Thank you for the interest

Mean time you can try #16 @devanshimodha
It’s a simple but necessary one! Let me know if you need anything


Spike: Change ExtensionContainerScope to be from single instance instead of static

@jonorossi Spike for discussion, not ment to be merged, nor build


Add hover effect for buttons

It's hard to distinguish buttons currently. I can add a hover effect in the draw step since the context is passed (and can obtain the mouse pos). Something simple like a bg color or text color change.
Let me know if you are interested in such a change and will submit a PR.

Why not? :)
GUI needs complete rework but it's unlikely that I'll find time for it soon.
Though it'll not help on android :(

Hmm, I can add the hover feature but it will likely get thrown out since it will just be bolting on functionality without really making it good long term. I suggested it as it's a small feature to get used to the code base a bit so I might still do it. I can try reworking the UI if you would like; I have written a small (and incomplete) Gui framework in Rust before so I have some notion of what is involved, though I'm not yet familiar with gfx and how to build a single vertex list for the ui to render in a single draw call. Do you have a design in mind for the gui? I don't mind trying to implement your design if you have one.
The simplest thing to me seems to be to take the current approach and extend it by adding panel/layout widgets and a Widget trait so you can aggregate different widget types (buttons/images/labels/etc). Then you can likely get rid of ButtonManager.
Maybe something like this?
 // Usage
 let mut panel = Panel::new().layout(Layout::Vertical).build();
 let button_id, button = Button::new().text("Play").color(&[255, 255, 255, 255]).bg_color(..).build();
 panel.add_widget(button);

 // Event handling (same as right now)
 match panel.handle_click(..) {
     button_id => {..}
 }

// Some defs
trait Widget {
    fn draw(context,...);
    fn event(evt: UI::Event) -> Option<WidgetId>;
}

struct Panel {
    widgets: HashMap<ButtonId, Widget>;
}

impl Widget for Panel {...}

struct Button {
   text: String,
   color: ....,
}

impl Widget for Button {...}

Thoughts?

Submitted a smallish PR that adds an on_hover effect for buttons (changes color) and does some of the things above. I'll finish the work if you agree with the approach.

:snail:
Sorry for the slow response - you made me think about ZoC's middle-term plan.
Aaaand I'm leaning towards trying to port ZoC to Amethyst in a few months. Because by that time I'm hoping to start improving the visual part of the game and it makes little sense for me to develop my own "big" graphics engine alone.
A big part of the current ZoC's visualizer code will be thrown away.
Thus serious contributions to the current gui (and all code other then core) doesn't seem like a good idea to me.

Makes sense. Is there anything specific you would like contributions to? I have some free time I'm trying to fill up with Rust in some way :)

Hmmm, let's discuss this in gitter - https://gitter.im/ozkriff


framework: esp-idf throws Syslog.h not found

I am building ESPHome Bluetooth Proxies for Sonoff Mini R4 (ESP32) switches.  The ESPHome link seems quite adamant that we use framework: {type: esp-idf}.  When I switch from {type: arduino} to {type: esp-idf}, I start getting this error:
In file included from src/esphome/components/syslog/syslog_component.cpp:1:
src/esphome/components/syslog/syslog_component.h:9:10: fatal error: Syslog.h: No such file or directory

Example config:
esphome:
  name: syslog-esp-idf
esp32:
  board: esp32dev
  framework:
    type: esp-idf
logger:
syslog:
  ip_address: !secret syslog_ip_address
api:
ota:
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

Hi, please excuse the delayed response.
My component is merely a wrapper that connects https://github.com/arcao/Syslog and esphome.
I'm not certain how esphome handles dependencies and how/if it would include a library that was designed for the Arduino framework.
However, the library is simple, and you might be able to port it to esp-idf compatible code. The lib is well-designed and most of the code can stay the same, you would only need to look at these functions to use the proper methods to send UDP messages:

inline bool Syslog::_sendLog(uint16_t pri, const char *message)
inline bool Syslog::_sendLog(uint16_t pri, const __FlashStringHelper *message)

Samuel.

Ah, thats too bad :/

Should be fixed by #17


Request for a new release with the mod.ts file

It looks like deno.land/x just changed the default version (if none was specified) from the master branch to the latest release. I'd love to continue using the mod.ts file in the master branch, but it looks like it's not in a release yet.
Thanks for making this! And isn't Deno great!?

Sorry about that, I forgot v0.3.0 didn't have the mod.ts file in it. I've added v0.3.1 tag.
I'm close to having v0.4.0 done, I think I'll probably finish it this weekend. It will add the ability to mock time and I'm going to make some changes so this code will pass deno lint. I had this project on hold because of a bug in deno related to timers. I resolved that issue in deno v1.2.0.

Thanks @KyleJune!


incompatibility with atum 2.0 (?)

https://mclo.gs/3Uqnecx

Yeah probably
It got like rewritten so I would expect the mixin squared mixins to break

https://modrinth.com/mod/fsg-mod/version/2.4.0+MC1.16.1


Rename dotty to Scala 3

Following the announcement that the upcoming change in the
naming of the Dotty atifacts to Scala [3], this name change
is applied to the migration guide by renaming Dotty to Scala 3
where applicable
A minor update to .gitignore to ignore VCS artifacts
Resolves #67

@mlachkar

Look good to me!
OPT, in another PR, we should also rename files.

Indeed! I thought about that, but didn't actually do it because it may require some coordination to avoid confusion (if any of you was working on the files to be renamed).


Update to svelte 4 and sveltekit 2

This should be done in a separate release (v0.8.3).

Unfortunately this requires node 18 (https://github.com/sveltejs/kit/releases/tag/%40sveltejs%2Fkit%402.0.0), which is not always accessible for the moment. We should postpone this.


Fix issue #5612: [Bug]: Github Resolver outputs "The workflow to fix this issue encountered an error." despite the "Overview of Changes" has been successfully commented

This pull request fixes #5612.
The issue has been successfully resolved. The AI agent implemented changes that prevent confusing error messages when partial successes occur in the GitHub resolver.
Specifically, they:

Added a new property has_partial_success to track when some comments are successfully processed
Modified the error handling logic to only show error messages when there are no successful comments
Verified the fix with comprehensive testing across different scenarios

For a human reviewer, I would summarize it as:
"This PR fixes the confusing error message display in the GitHub resolver by introducing smarter error handling. Now, when some comments are successfully processed (like the 'Overview of Changes' comment), the system won't show an error message even if other operations failed. This provides a better user experience by avoiding misleading error messages when partial successes occur. The changes have been thoroughly tested across various comment processing scenarios."
Automatic fix generated by OpenHands 🙌

To run this PR locally, use the following command:
docker run -it --rm   -p 3000:3000   -v /var/run/docker.sock:/var/run/docker.sock   --add-host host.docker.internal:host-gateway   -e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:da94321-nikolaik   --name openhands-app-da94321   docker.all-hands.dev/all-hands-ai/openhands:da94321

Unfortunately this won't work :(
There seems to be an issue with the way the workflow definition and openhands/resolver/send_pull_request.py are interacting


Missing dependency

I have a project that I've been deploying to EKS using node-adapter and I want to move it to lambda since it's an internal web app that's infrequently used. I added the @jill64/sveltekit-adapter-aws dependency and the following to svelte.config.js
const environment = {...};

/** @type {import('@sveltejs/kit').Config} */
const config = {
  preprocess: vitePreprocess(),

  kit: {
    adapter: adapter({
    name: 'MyApp',
    deploy: false,
    architecture: 'lambda-s3',
    memory: 128,
    env: environment,
}),
    paths: {
      base: '',
    },
  },
};

I needed to add tsx to my devDependencies.

Thanks for opening this issue.
I am too busy to respond to this right now, but will resolve it in the near future.

——————————
<EMAIL_ADDRESS>SvelteKit demo app, JavaScript
<EMAIL_ADDRESS>——————————
I have tested the above conditions and have not identified any problems with the build/preview.
Can you provide detailed conditions and error messages?

Conditions found.
When destroying CDK assets (npx cdk destroy), there seems to be a missing dependency.
I will try to resolve this issue.

additional info.
required deps.
    "aws-cdk": "^2.127.0",
    "aws-cdk-lib": "^2.127.0",
    "tsx": "^4.7.1",


Add fiboa improve command #79 #21

Implements #21, #79 and #113
Needed to do various of these operations anyway for the fiboaGPT demo, so went ahead and directly wrote it as code. No tests yet.

Various "improvements" can be applied to a fiboa GeoParquet file.
The commands allows to

change the CRS (--crs)
change the GeoParquet version (-gp1) and compression (-pc)
add/fill missing perimeter/area values (-sz)
fix invalid geometries (-g)
rename columns (-r)

Example:

fiboa improve file.parquet -o file2.parquet -g -sz -r old=new -pc zstd

Check fiboa improve --help for more details.

This also implements a way to pass through custom schemas as we define them through MISSING_SCHEMAS in the converters. The schemas can then also be used for validation and will be passed through the merge/improve commands. This also results in less warnings writing the Parquet files etc.

Todo: Depending on #119, make changes here and in converters accordingly.


PR: Move collections editor out of varexp and into widgets

Description of Changes

[ ] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)

[ ] Included a screenshot or animation (if affecting the UI, see Licecap)

Issue(s) Resolved

Fixes #12725
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: @goanpeca

@ccordoba12 this is a simple change needed for the VarExp plugin and the Console plugin.
Please take a look so I can restore the viewers on the Console plugin before the Console PR is merged. Thanks!


Support $search

This is a proposed special attribute that allows you to fuzzy match a property. Possibly even multiple properties and/or nested documents.
Suggested syntax:
name: {
  $search: ['alice', 'Alice', 'bo', /$bob/i]
}

Following similar syntax to our other special query filters, this would allow you to filter by a singular value, multiple values (treated like an or) and/or regular expressions directly.
Internally mongoose requires a $regex query but we can fairly easily build a singular regex from this array.

Mongoose syntax that works: query = { fieldName: { $regex: 'pattern', $options: 'igm' } }

I think this might best be applied as a example hook in the docs, here's what I used:
function $search(hook) {
  if (hook.params.query.$search) {
    var search = hook.params.query.$search;
    var regEx = new RegExp('.*' + search + '.*', 'i');
    delete hook.params.query.$search;
    hook.params.query.$or = [
      { name: regEx },
      { email: regEx },
      { address1: regEx },
      { address2: regEx },
    ];
  }
}

service.before = {
  find: $search,
}

Shows off two things that I think are important to highlight in the gitbook for hooks:

How to create your own query param and access it
How to overwrite the query being used later on in the adapter.

IMHO having a generalized approach to this in the adapter is not what people need to be doing. You should be customizing this to your apps needs. Having rich examples of usage in the docs helps people get there.

See https://github.com/feathersjs/feathers/issues/334

this got removed again?


Security report

Describe the bug
The guest can view the contents of any higher-level directory.
To Reproduce
Steps to reproduce the behavior:

Open site with guest view.
Press "Home" button.
Edit address bar and change "?cd=%2F" to "?cd=.."

Expected behavior
Show only content set by the administrator.
Screenshots
Normal behavior:

Modified path:

Environment (please complete the following information):

FileGator Version [e.g. 7.4.3]
Server: [nginx/1.14.2]
PHP Version [PHP 7.3.14]

Thanks for reporting this, it should be fixed now.
Please check the security guidelines as well.

Yes, fixed :) Thank You.


packet error

http://pastebin.com/dmsdHqaG

@fuzzybot
Thanks for replying,
It's caused by sending chunk packet to 1.9.X client while I am using 1.8 spigot server with ViaVersion.
The packet was modified by sort of anti-xray algorithm similar to "Orebfuscator".
It's fine and working correctly without BungeeCord/Waterfall, but got this kind of error and user disconnect from server with BungeeCord/Water fall.
Link to : https://github.com/SpigotMC/BungeeCord/issues/1833

@JHXSMatthew Instead of posting the issue here instead, you should put your guess to that linked BungeeCord issue if you experience it also with normal BungeeCord. Please make clear that it works fine without BungeeCord. Also you should link your vhunk packet modifier if possible - what are you using if not Orebfuscator or inbuilt obfuscation?

@Janmm14
"Why I am not posting issue to bungeecord githun repo"

They just closed it.

" Please make clear that it works fine without BungeeCord"

I actually found that today after switched to waterfall.

"what are you using if not Orebfuscator or inbuilt obfuscation?"

go ahead and try it, you can see really ores in a line using X-ray just between chunks and chunks.

@JHXSMatthew
You did not read why they closed it.  So go ahead, tag i9hdkill and say him that this is still an issue and write your guesses again there.
They'll reopen.
Next time you might want to be a bit less this kind of a person and react to things written by others and that you clearly made a mistake there.

@fuzzybot 1.8.8 spigot + viaversion + 1.9 client + oreobfuscator plugin?
Right, then that's interesting.

@Janmm14
Yeah, you are correct, but  let's stop this kind of "your fault, my fault" and just see how @fuzzybot approaches this issue.

@fuzzybot
Exactly, I do not have any issue with build-in stuff.
But the build-in ore obfuscator has issues, sometimes not all chunks are corrected "obfuscated" , real ore will somehow showing at the "edge" of chunks. That's the reason I use  original "obfuscator" code and why I cannot trust build-in version.
And for viaversion not correctly fixing "raw 1.8 packet" part, It does work(obfuscator plugin + viaversion) when you do not use Waterfall/BungeeCord and all chunks are corrected "obfuscated" .
If those words confused you, please try to set up three set of servers and joined with X-ray mod.
1- Waterfall + spigot 1.8.8 + obfuscator plugin + viaversion  => (ERROR)
2- Waterfall + spigot 1.8.8 + build-in(engine 2) obfuscator  + viaversion => (Good, but get some ores not correctly obfuscated when you run fast)
3- spigot 1.8.8 + obfuscator plugin + viaversion  =>(Works perfect).
Thanks for your help :)

Alright, It's your software and you decide it.
But I still think it's highly related to Bungee/Waterfall.
Cause it works WITHOUT Bungee/Waterfall.


[Divider][material-next] Add Divider component

This issue is to track the work for adding the Divider component to @mui/material-next, moving forward the Material You effort (https://github.com/mui/material-ui/issues/29345)
Material You Divider specification: https://m3.material.io/components/divider/overview
Migration Guide steps

[x] Copy component files from material (v5) to material-next
[ ] Remove deprecated components and componentsProps props
[ ] Drop support for ThemeProvider in favor of CssVarsProvider
[ ] Migrate component to Typescript
[x] Refactor component to use Base UI’s hook if it exists: There's no Base UI hook, pure presentation component
[x] Implement Material You design specs: PR #39179
[x] Add component playground to v5 docs: PR #39179
[ ] Refactor styles to use component CSS Variables

can i handle this?

Hey @rajvinder-kaur, thanks for the interest!
The tasks that are not completed are ready to take. Is there a particular one you wish to take?

@rajvinder-kaur sure, go ahead! Please try to follow Joy's Divider implementation. It's not necessary to have all the variables Joy has.


Compatibility tag not valid in app manifest.xml ~6.5.0

PHP Version
8.2.12
Shopware Version
<IP_ADDRESS>
Affected area / extension
Platform(Default)
Expected behaviour
Es mentioned in the Shopware References. The <compatibility>~6.5.0</compatibility> should be valid.
Actual behaviour
When using <compatibility>~6.5.0</compatibility> in the manifest.xml file. The command app:validate throws this error:
[ERROR] Unable to parse file "/var/www/html/custom/apps/DigaEmbedSocialIntegrationApp/manifest.xml". Message:
[ERROR 1871] Element 'compatibility': This element is not expected. (in /var/www/html/ - line 14, column 0)

How to reproduce
Just create a new app or use an existing app. Add the tag <compatibility>~6.5.0</compatibility> into the manifest.xml file. Now try to install the app. The Error msg should be shown in the Administration or when trying to install with the console in the console.

[public] Automated response: This issue is linked to the internal issue https://shopware.atlassian.net/browse/NEXT-37876.
[created from NEXT-37876, comment 488537]

Hey, this issue can not be reproduced with the latest version, we are closing this issue for now.


Automatically resend txs on bad nonce

The max number of attempts that should be made for each tx should be configurable per Client. This has already been implemented in the Unity SDK.

Resolved in PR #29


Youtube videos are now directly handled by mpv in mailcap

I simplified the mailcap entry for youtube videos using mpv. No need to pipe the stream from youtube-dl into mpv anymore since this latter can directly handle youtube urls. Bonus side effect : it's now possible to navigate backward and forward in the video.

Thanks!