RuneScape Companion crash on start-up

Hello readers,
Since Android 7.1.1 (LineageOS 14.1) I am pushing MicroG Core (v0.2.4-79) to my System/Priv-app folder in order to receive network location.
Previously I just had installed MicroG like any other app, RuneScape Companion worked fine and I received GCM push-notifications. Now, RuneScape crashes at start-up when (I think) it wants to register itself for GCM. Other apps like Signal work with GCM with MicroG in System/priv-app folder in my case.
I tried to find out how to make a log of the crash, but I can't find a way how to. Is there anyone who can help me with my crashing app and if needed how to produce a bugrepport/logcat?
Device: OnePlus 3
OS: LineageOS 14.1 Android 7.1.1
Securitypatch: march 5
MicroG version: 0.2.4-79
RuneScape Companion version: 1.0.6

You need to remove then reinstall your GCM app after installing MicroG.

Thank you for your answer, unfortunately after reinstalling RuneScape Companion MicroG is still crashing when I launch RuneScape Companion.
In my previous post I mentioned RuneScape crashing, this is not correct, MicroG is crashing when I launch RuneScape, sorry for the typo.
Do you have other possible solutions?

Can you get a logcat of the crash? That would help determine what the fix should be.

I just installed RuneScape Companion to check. It starts up correctly and takes me to a login page (I have not logged in as I do not have an account). Then went to MicroG settings and looked at Google Cloud Messaging but Runescape Companion was not listed there. Are you sure that it uses GCM?
My setup details are: Download microG Services Core from https://microg.org/download.html and copy to /system/priv-app/ then reboot and setup as normal.

I am 100% sure RS Companion uses GCM because earlier when I had MicroG installed as user app, RS Companion was listed in the MicroG Core app as using GCM.
RS Companion makes an attemp to register itself to the GCM network right after you log in, before log in I don't experience any crash of MicroG Services Framework Proxy.
Unfortunately like I mentioned in my first post I don't know how to produce a logcat, if someone would give me a hint or link to a how-to I would gladly make one.
Could my problem exist because I don't have MicroG Services Framework Proxy installed in System/Priv-app?

I found this Tutorial on xda:
https://forum.xda-developers.com/showthread.php?t=2141817
It explains how to make a logcat log. if something does not work like expected feel free to ask here for help.

Oh, this is a Windows Guide. Are you on windows ?

@Octopusss reinstall microG Services Framework Proxy (not microG Services Core that you put in /system)

@mar-v-in That worked! Thank you very much for all the time and effort you put into MicroG, am really loving your project!
@Herny64 Thanks for your help and thanks for the guide, I will use it for the future.


Feature request VK_EXT_descriptor_indexing

Hi!
We noticed that our runtime-sized (sized by the descriptor-set) image2D arrays are not correctly patched before pipeline creation and this seems to be due to missing support for VK_EXT_descriptor_indexing. A potential solution would be to patch the spirv just before pipeline creation, based on the descriptor set layout? Is this feature in the pipeline (pun intended) ;)
`
#version 460
#extension GL_ARB_separate_shader_objects : require
#extension GL_ARB_shading_language_420pack : require
#extension GL_ARB_compute_shader : require
uniform layout(rgba32f, binding = 0) writeonly image2D myImages[];
layout(local_size_x = 32, local_size_y = 1, local_size_z = 1) in;
void main()
{
vec4 foo = vec4(8,6,4,2);
imageStore(myImages[1], ivec2(0, 0), foo);
}
`
Thanks!

https://developer.apple.com/documentation/metal/buffers/about_argument_buffers
The above link is relevant subject as Metal exposes support for unbounded resource indexing and I also believe that the capability to do unbounded texture indexing is available on iOS with A13 GPUs. (I'm not sure which source to believe but from the presentation material, it suggests that the A13 GPU most likely does not support unbounded sampler indexing which is a pretty similar restriction as observed on Intel's Gen 7.5 graphics architecture)

Argument buffer support was implemented in #1335. Are there any updates regarding VK_EXT_descriptor_indexing?

The docs say it's supported if you enable MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS.

Can this ticket be closed?

Closing. Thanks for pointing out it was still hanging around.


[Scala 3] no implicit argument of type munit.Location was found for parameter loc

I am converting an existing scala 2 project to scala 3. Scala version is 3.0.0-M2

I am getting some error while trying to compile with munit tests.
no implicit argument of type munit.Location was found for parameter loc of method assertEquals in trait Assertions
no implicit argument of type munit.Location was found for parameter loc of method test in class FunFixture
CODE
class JwtVerifierTest extends FunSuite with Fixtures {

  private val fixture = FunFixture.map2(keycloak, actorSystem())

  private case class TestToken(
      preferred_username: String,
      scope: String,
      sub: String,
      iss: String
  )

  private given dec as Decoder[TestToken] = Decoder.from(TestToken.apply _)

  fixture.test("can verify token") {
    case (_, actorSystem) =>
      implicit val system: ActorSystem[SpawnProtocol.Command] = actorSystem
      val client = new OIDCClient(
        s"http://localhost:${settings.port}/auth/realms/master/.well-known/openid-configuration"
      )
      println(BearerToken.fromServer(settings.port, "admin", "admin"))
      val manager = new PublicKeyManager(client, 10.seconds)
      val verifier = new JwtVerifier(client, manager)
      val token = BearerToken.fromServer(settings.port, "admin", "admin")
      val decoded = Await
        .result(verifier.verifyAndDecode[TestToken](token.token), 5.seconds)
        .get
      assertEquals(decoded.preferred_username, "admin")
  }
}

Thank you for reporting, it seems I can reproduce this in Scastie with this minimized example:
https://scastie.scala-lang.org/LvRCcoNKTLiqFpafSyrUAg
class Suite extends munit.FunSuite {
  test("t") {
    assertEquals(1, 1)
  }
}

I'll take a look

Some preliminary observations:

MUnit test suite includes cases where Location must be synthesized by the compiler and they work across all supported versions
When invoking munit.Location.generate in Scastie we get

Scala 2 macro cannot be used in Dotty. See https://dotty.epfl.ch/docs/reference/dropped-features/macros.html
To turn this error into a warning, pass -Xignore-scala2-macros to the compiler

even though generate is also a Scala 3 def macro, so it should pick up that one instead.

The problem appears also with M1 and MUnit 0.7.18 (i.e. before I split this MacroCompat classes further, so that should not be the root cause)

I'll dig deeper, but my educated guess right now is an issue with the published jar.

Thank you for taking this up

Ok, I think I could use some help here from someone more familiar with how Dotty macros and Scala 2 macros interact. Here's a simple reproduction of this issue we're observing:
object Repro  {
  munit.Location.generate
  // Scala 2 macro cannot be used in Dotty. See https://dotty.epfl.ch/docs/reference/dropped-features/macros.html
  // To turn this error into a warning, pass -Xignore-scala2-macros to the compiler
}

https://scastie.scala-lang.org/k1Vv7BT6TGW6YUWZ3gxxpw
Now, generate is a macro that is comes from different sources depending on the Scala version.
In Scala 2 we have
trait LocationMacro {
  implicit def generate: Location = macro locationImpl
}

whereas in Scala 3 (or Dotty 0.x) we have
trait LocationMacro {
  inline implicit def generate: Location = ${ locationImpl() }
}

I've tried to decompile the published jar to check what's going on and this is what I see in munit.internal.MacroCompat

Decompiled source
//
// Decompiled by Procyon v0.5.36
//

package munit.internal;

import java.lang.invoke.SerializedLambda;
import scala.MatchError;
import scala.runtime.BoxesRunTime;
import scala.quoted.Liftable;
import scala.quoted.Liftable$;
import scala.quoted.Expr$;
import scala.collection.immutable.Seq;
import scala.quoted.Type$;
import munit.Clue;
import scala.quoted.Type;
import scala.Function2;
import scala.quoted.runtime.QuoteUnpickler;
import munit.Location;
import scala.quoted.Expr;
import scala.quoted.Quotes;
import scala.runtime.ModuleSerializationProxy;
import java.io.Serializable;

public final class MacroCompat$ implements Serializable
{
    public static final MacroCompat$ MODULE$;

    private MacroCompat$() {
    }

    static {
        MODULE$ = new MacroCompat$();
    }

    private Object writeReplace() {
        return new ModuleSerializationProxy((Class)MacroCompat$.class);
    }

    public Expr<Location> locationImpl(final Quotes x$1) {
        final Object pos = x$1.reflect().Position().ofMacroExpansion();
        final String path = x$1.reflect().SourceFileMethods().jpath(x$1.reflect().PositionMethods().sourceFile(pos)).toString();
        final int startLine = x$1.reflect().PositionMethods().startLine(pos) + 1;
        return (Expr<Location>)((QuoteUnpickler)x$1).unpickleExpr((Serializable)"XKGrH5mBAL5GaMRc/gAA39h1UTGRAAHFAYRBU1RzAYY8aW5pdD4BhW11bml0AYhMb2NhdGlvbgKCgoMBhGphdmEBhGxhbmcCgoWGAYZTdHJpbmcCgoeIAYVzY2FsYQGDSW50AoKKiz+EgYSJjAGLTWFjcm9Db21wYXQXgY4BiGludGVybmFsAoKCkAGJUG9zaXRpb25zAcVtdW5pdC9zaGFyZWQvc3JjL21haW4vc2NhbGEtMy4wLjAtTTIvbXVuaXQvaW50ZXJuYWwvTWFjcm9Db21wYXQuc2NhbGGApZOjiJtwjVVvg3WDNoKTh/+FgHWINoeTh/+FgXWLNopvj3WPNpGSm4YDoAPPhJMB+H6Yr4TdgLeJjoCRgL+PlICRgA==", (Function2)null, this::locationImpl$$anonfun$adapted$1);
    }

    public <T> Expr<Clue<T>> clueImpl(final Expr<T> value, final Type<T> evidence$1, final Quotes x$2) {
        final String source = x$2.reflect().PositionMethods().sourceCode(x$2.reflect().TreeMethods().pos(x$2.reflect().Term().of((Expr)value)));
        final String valueType = Type$.MODULE$.show((Type)evidence$1, x$2);
        return (Expr<Clue<T>>)((QuoteUnpickler)x$2).unpickleExpr((Serializable)"XKGrH5mBAEjldacYTQAA64tAMHOOAAKbAYRBU1RzAYY8aW5pdD4BhW11bml0AYRDbHVlAoKCgwGEamF2YQGEbGFuZwKChYYBhlN0cmluZwKCh4gBhk9iamVjdAKCh4o/hoGE/4mLiQGHTm90aGluZwGFc2NhbGEBg0FueQGBVAGBJAGMZXZpZGVuY2UkMSRfCoORgZIBi1NwbGljZWRUeXBlAYZxdW90ZWQCgo6VAYdydW50aW1lAoKWlwKCmJQ/goGZAYtNYWNyb0NvbXBhdBeBmwGIaW50ZXJuYWwCgoKdAYlQb3NpdGlvbnMBxW11bml0L3NoYXJlZC9zcmMvbWFpbi9zY2FsYS0zLjAuMC1NMi9tdW5pdC9pbnRlcm5hbC9NYWNyb0NvbXBhdC5zY2FsYYDgk96M1oi3iZ5wjFVvg6qVoYh1gzaCrIKNgKOIdY02jnWPM52QNb2Th/+FgnWINoeThf+DgzOkk4X/g4Qzq4Obk6SK/4OAM5//g4Eznxeti3WUNpiIhXCaVTPPb5x1nDaen6eGBfsGsISgBdB+mKioe+i/hNOAAciXhZCAkYC/kYiAkYCviJSAkYA=", (Function2)this::clueImpl$$anonfun$adapted$1, this::clueImpl$$anonfun$adapted$2);
    }

    private final Expr locationImpl$$anonfun$1(final String path$1, final int startLine$1, final int x$0, final Seq x$1, final Quotes x$2) {
        Expr expr;
        if (0 == x$0) {
            expr = Expr$.MODULE$.apply((Object)path$1, (Liftable)Liftable$.MODULE$.StringLiftable(), x$2);
        }
        else {
            if (1 != x$0) {
                throw new MatchError((Object)BoxesRunTime.boxToInteger(x$0));
            }
            expr = Expr$.MODULE$.apply((Object)BoxesRunTime.boxToInteger(startLine$1), (Liftable)Liftable$.MODULE$.IntLiftable(), x$2);
        }
        return expr;
    }

    private final Expr locationImpl$$anonfun$adapted$1(final String path$2, final int startLine$2, final Object x$0, final Object x$1, final Object x$2) {
        return this.locationImpl$$anonfun$1(path$2, startLine$2, BoxesRunTime.unboxToInt(x$0), (Seq)x$1, (Quotes)x$2);
    }

    private final Type clueImpl$$anonfun$1(final Type evidence$1$1, final int x$0, final Seq x$1) {
        Type type;
        if (0 == x$0) {
            type = evidence$1$1;
        }
        else {
            if (1 != x$0) {
                throw new MatchError((Object)BoxesRunTime.boxToInteger(x$0));
            }
            type = evidence$1$1;
        }
        return type;
    }

    private final Type clueImpl$$anonfun$adapted$1(final Type evidence$1$2, final Object x$0, final Object x$1) {
        return this.clueImpl$$anonfun$1(evidence$1$2, BoxesRunTime.unboxToInt(x$0), (Seq)x$1);
    }

    private final Expr clueImpl$$anonfun$2(final Expr value$1, final String source$1, final String valueType$1, final int x$0, final Seq x$1, final Quotes x$2) {
        Expr expr = null;
        switch (x$0) {
            case 2: {
                expr = Expr$.MODULE$.apply((Object)source$1, (Liftable)Liftable$.MODULE$.StringLiftable(), x$2);
                break;
            }
            case 3: {
                expr = value$1;
                break;
            }
            case 4: {
                expr = Expr$.MODULE$.apply((Object)valueType$1, (Liftable)Liftable$.MODULE$.StringLiftable(), x$2);
                break;
            }
            default: {
                throw new MatchError((Object)BoxesRunTime.boxToInteger(x$0));
            }
        }
        return expr;
    }

    private final Expr clueImpl$$anonfun$adapted$2(final Expr value$2, final String source$2, final String valueType$2, final Object x$0, final Object x$1, final Object x$2) {
        return this.clueImpl$$anonfun$2(value$2, source$2, valueType$2, BoxesRunTime.unboxToInt(x$0), (Seq)x$1, (Quotes)x$2);
    }
}

which looks reasonable to me: I this is the Scala 3 version of MacroCompat which uses quotes, as expected.
I'm drawing a blank of what the problem may be, any ideas @olafurpg or anyone from the Dotty team? @bishabosha @smarter?

Ahh, an idea: @bilal-fazlani are you using withDottyCompat in your build? I just noticed that Scastie uses it and that may explain the strange behavior

Yes
https://github.com/bilal-fazlani/akka-http-jwt-auth/blob/dotty/build.sbt#L52-L64

Ok, removing should fix the issue.
withDottyCompat is needed for modules that are not cross-published against Dotty/Scala 3 and it will pick up the _2.13 jar instead.
This works for modules which do not have Scala 2 macros (since they are forward compatible with Dotty), but it will break modules like MUnit that cross-compile to provide macro support across all Scala versions.
This explains why the compile "sees" the Scala 2 generate macro, instead of the Scala 3 one.
I'm fairly confident this is the problem, so I'll go ahead and close the issue. Let me know if that's not the case and we can reopen it.

Yes that worked. Thanks @gabro


Pooling memory optimizations

[x] intro of get-ref
[x] pooling of get-ref memory into a single alloc
[ ] handling of dynamic memory
[ ] smart reuse of memory location for get-ref

This issue is still in progress.


pixi run autocompletion broken with envs

Checks

[X] I have checked that this issue has not already been reported.

[X] I have confirmed this bug exists on the latest version of pixi, using pixi --version.

Reproducible example
In the polarify example #735
pixi run <TAB>
# nothing happens

Tested on https://github.com/prefix-dev/pixi/commit/479c06d34ab063067de174948221ac689ccec553
Issue description
ideally, when doing pixi run <TAB>, we get all tasks that are available in the default env and --environment.
When we do pixi run --environment <TAB> we get a list of all envs (#739)
When we do pixi run --environment py39 <TAB> we get a list of all available tasks in the py39 environment

I'm not able to reproduce, this only works in zsh and bash. Which both work on my machine.

Ah i found out what the problem is:
I don't have global tasks defined:
[project]
name = "polarify"
channels = ["conda-forge"]
platforms = ["linux-64", "osx-arm64", "osx-64", "win-64"]

[dependencies]
python = ">=3.9"
pip = "*"
polars = ">=0.14.24,<0.21"

[feature.py39.dependencies]
python = "3.9.*"
[feature.py310.dependencies]
python = "3.10.*"
[feature.py311.dependencies]
python = "3.11.*"
[feature.py312.dependencies]
python = "3.12.*"

[feature.build.dependencies]
hatchling = "*"
[feature.build.tasks]
postinstall = "pip install --no-build-isolation --no-deps --disable-pip-version-check -e ."

[feature.test.dependencies]
pytest = "*"
pytest-md = "*"
pytest-emoji = "*"
hypothesis = "*"
[feature.test.tasks]
test = "pytest"

[environments]
py39 = ["py39", "test", "build"]
py310 = ["py310", "test", "build"]
py311 = ["py311", "test", "build"]
py312 = ["py312", "test", "build"]

With this configuration, you don't get any tasks in the tab completion

I'll close this one as it's basically the same as #739


Ugly tabs and path, unresponsive to themes

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[ ] Tried basic troubleshooting (if a bug/error)

[ ] Restarted Spyder
[ ] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[ ] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
The tabs with files look ugly and the same in both light and dark theme. Nothing ugly about the filepath above them, but it also looks the same in both light and dark themes, and so barely readable in the latter.

I'm not sure what to answer, I can check if you have any ideas where to look? I don't think I changed any setting at all to be honest...

How did you installed Spyder?

Using conda, from conda-forge.

Can you update to 5.1.1 and let me know if you are seeing the tabs the same?

I can't :( I thought I had the latest version... I get an error when running mamba install -c conda-forge spyder==5.1.1:
- package python-language-server-0.36.2-pyhd3eb1b0_0 requires pycodestyle >=2.6.0,<2.7.0, but none of the providers can be installed

I created a new environment and installed 5.1.1 - then it's fine... I actually kept it in a separate environment with nothing else, just to avoid such problems, but conda is annoying sometimes.

Ok! I'm glad to hear that, I'm thinking that maybe you have an outdated dependency on the previous environment. The important part is that we could fix your issue.
If you encounter why it was broken please reopen this issue and let us know.
Thanks for reporting!


NuGet Package - Warning on every build

The DLL provided by the NuGet package generates the following warnings on every build in Xamarin Studio. I've switched over to a compiled version of the sources and no such build warning occurs.
MTOUCH:  warning MT3005: The dependency 'System.Threading.Tasks, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' of the assembly 'Fusillade, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' was not found. Please review the project's references.
MTOUCH:  warning MT3006: Could not compute a complete dependency map for the project. This will result in slower build times because Xamarin.iOS can't properly detect what needs to be rebuilt (and what does not need to be rebuilt). Please review previous warnings for more details.
MTOUCH:  warning MT3005: The dependency 'System.Threading.Tasks, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' of the assembly 'Fusillade, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' was not found. Please review the project's references.
MTOUCH:  warning MT3006: Could not compute a complete dependency map for the project. This will result in slower build times because Xamarin.iOS can't properly detect what needs to be rebuilt (and what does not need to be rebuilt). Please review previous warnings for more details.

@lakario can you please upgrade to 0.7.0 and report back success/fail? I'll close the issue for now - assuming resolved as quite some time has elapsed. If not resolved - reply back and we'll re-open issue.


bevy_pbr: Fix ClusterConfig::None

Objective

Fix ClusterConfig::None
This fix is from @robtfm but they didn't have time to submit it, so I am.

Solution

Always clear clusters and skip processing when ClusterConfig::None
Conditionally remove VisiblePointLights from the view if it is present

bors r+


Package.swift

Hi!
First of all thanks for a great repo, super usefull!
I want to use this great repo in a REST api project using Perfect 2.0. To be able to build from command line this repo must support the swift package manager.
Simply copy and paste the text below to a file called "Package.swift". The Package.swift file should be saved in the root directory of the project/repo.
import PackageDescription
let package = Package(
name: "ObjectMapper"
)
Edit: This might require some reorganization of the project layout.

My first search wasn't good enough. Found that there already is an issue registered about Swift Package Manager. Sorry about that.


Span Query timeout should be configurable

When the SpanSignalList receives a query, the timeout for that query to complete is set at 30 seconds. This value should be configurable.

So as I'm working this I'm actually seeing two separate values that deal with timeout. A "TakeDuration" timeout, where the developer can specify how long to wait for a value, and a "default" timeout if the developer does not specify.
Initially, I put the TakeDuration on the TakeAll value, but now I'm thinking it should actually be a top level property on the SpanQueryRequest so that it can be applied to every Take, not just TakeAll. Making that refactor now.


Microsoft Connect is dead

Look at this: https://docs.microsoft.com/en-us/collaborate/connect-redirect
I did a quick grep and there are 18 unique MS Connect links left which point to a dead end.
Some of them may be still available in the Google cache (using cache:<url>), some could maybe "restored" via http://web.archive.org/. Or at least these pages would help us to find out where they have been redirect to in MS new bug database - which is  https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/. However I think not all of the bugs have been copied over to the new bug database...
So, these bugs are effected which still show up in the caniuse repo:
(Note: Some of these url's actually don't show up like this in the caniuse repo, some have a different prefix like .../IE/feedbackdetail/view/... or have a text added the the path like .../885747/ie-11-fires-the-input-event-when-a-input-field-with-placeholder-is-focused. So if someone tries to restore these links e.g. with Google cache or webarchive maybe these original urls are used for these cached pages, not the urls below):
https://connect.microsoft.com/IE/feedback/details/1847897
https://connect.microsoft.com/IE/feedback/details/1883692
https://connect.microsoft.com/IE/feedback/details/759587
https://connect.microsoft.com/IE/feedback/details/762719
https://connect.microsoft.com/IE/feedback/details/776744 (twice)
https://connect.microsoft.com/IE/feedback/details/781303
https://connect.microsoft.com/IE/feedback/details/795172
https://connect.microsoft.com/IE/feedback/details/800076
https://connect.microsoft.com/IE/feedback/details/802625
https://connect.microsoft.com/IE/feedback/details/816293
https://connect.microsoft.com/IE/feedback/details/817132
https://connect.microsoft.com/IE/feedback/details/817488
https://connect.microsoft.com/IE/feedback/details/828416
https://connect.microsoft.com/IE/feedback/details/829392
https://connect.microsoft.com/IE/feedback/details/885747 (twice)
https://connect.microsoft.com/IE/feedback/details/920928
https://connect.microsoft.com/IE/feedback/details/926665
https://connect.microsoft.com/IE/feedback/details/962368
~~https://connect.microsoft.com/IE/feedback/details/811408~~ (twice) (fixed in #4066 already)

Ugh.

@mkurz Thanks for the research and getting that list of URLs.
@dstorey Any recommendations on how to deal with this? Do all the old connect bug IDs map to urls in the new database by any chance?

They should do I believe. Adding @molant

Do all the old connect bug IDs map to urls in the new database by any chance?

Unfortunately they don't map. For each issue there should have been a link in the comments to the new issue tracker with the new id.

However I think not all of the bugs have been copied over to the new bug database...

If some aren't the most common scenarios are:

they were linked to a feature and not a bug
they were marked as dupes of another one

@molant Do you still have access somehow to the now offline MS Connect database (or one of it's backups)? It would be great if we somehow could update the dead links...

@mkurz I'm looking into it, although I can't make any promises.
I'll keep you posted!

@molant Thank you very much! :smile:

@mkurz do you know if those issues are still open or closed? I have found more than 1000+ items from the old system and that would help me narrow a lot the search (can't use the old ids to search them 😞)

@molant Sorry, I don't know. I would guess some are open and some are already closed...
Interesting, why can't you search by id? I'd imagine the id was used as a primary key for the issues in an relational database... Or not? Do you have access to the db or just some frontend?

@mkurz connect was a separate system than the one used by the engineers. There were some bots doing the syncing from one place to another.
The only place where I've found the connect's ID in the engineering system is in the first comment of the bot. Unfortunately comments aren't indexed 😞
You can't imagine how happy we were when we stopped using connect.
Going back to the subject, I'll probably have to write a script to do this so it will take longer than expected while I find some time to do it.

Alright, I understand :smile:
Can you not just simply somehow switch on that old frontend that's offline now - or is it completely gone? (I know I know it's not easy... :wink: )
Anyway, thanks a ton for your efforts!

Here goes the list with all the bugs I could find. Not sure where I can find the missing ones though 😞

Old url
New ulr

https://connect.microsoft.com/IE/feedback/details/1847897
Not found

https://connect.microsoft.com/IE/feedback/details/1883692
Not found

https://connect.microsoft.com/IE/feedback/details/759587
Not found

https://connect.microsoft.com/IE/feedback/details/762719
Not found

https://connect.microsoft.com/IE/feedback/details/776744
https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/250661/

https://connect.microsoft.com/IE/feedback/details/781303
Not found

https://connect.microsoft.com/IE/feedback/details/795172
Not found

https://connect.microsoft.com/IE/feedback/details/800076
Not found

https://connect.microsoft.com/IE/feedback/details/802625
Not found

https://connect.microsoft.com/IE/feedback/details/816293
Not found

https://connect.microsoft.com/IE/feedback/details/817132
Not found

https://connect.microsoft.com/IE/feedback/details/817488
Not found

https://connect.microsoft.com/IE/feedback/details/828416
Not found

https://connect.microsoft.com/IE/feedback/details/829392
Not found

https://connect.microsoft.com/IE/feedback/details/885747
https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/274987/

https://connect.microsoft.com/IE/feedback/details/920928
https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/650529/

https://connect.microsoft.com/IE/feedback/details/926665
https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/640805/

https://connect.microsoft.com/IE/feedback/details/962368
https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/798766/

There's no more MS Connect URLs on the site, so closing this issue.


Publish container image of the server during ci

before this PR I do not need to add any change but simply run:
./gradlew build -Dquarkus.container-image.build=true

and I get a locally tagged image as both:
io.whitefox/server                                  3bd642c
io.whitefox/server                                  latest

that works just fine.
Should we then not simply do something like docker push on the ci?
Also I would do this only on main branch for now


Logs not being forwarded

Description
I have been awaiting log forwarding  in a very long time and as soon as i noticed it in the documentation I did a tiny experiment... Adding some log statements
I have not been able to see any logs from my react native app.
When I do a NRQL FROM Log SELECT message WHERE entity.name LIKE ' the service does not show up in the list of suggestions.
No logs show up if in the NR interface select Mobile -> Project -> Logs and change the time to be within the last 24 hours.
Your Environment

info Fetching system and libraries information...
System:
  OS: macOS 14.6.1
  CPU: (8) arm64 Apple M1 Pro
  Memory: 1.61 GB / 32.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 20.10.0
    path: ~/.nvm/versions/node/v20.10.0/bin/node
  Yarn:
    version: 3.8.2
    path: /opt/homebrew/bin/yarn
  npm:
    version: 10.2.3
    path: ~/.nvm/versions/node/v20.10.0/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /Users/...../.rbenv/shims/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 23.4
      - iOS 17.4
      - macOS 14.4
      - tvOS 17.4
      - visionOS 1.1
      - watchOS 10.4
  Android SDK:
    API Levels:
      - "30"
      - "31"
      - "33"
      - "33"
      - "34"
    Build Tools:
      - 29.0.2
      - 30.0.2
      - 30.0.3
      - 31.0.0
      - 33.0.0
      - 33.0.1
      - 34.0.0
    System Images:
      - android-33 | Google APIs ARM 64 v8a
    Android NDK: Not Found
IDEs:
  Android Studio: 2024.1 AI-241.18034.62.2411.12169540
  Xcode:
    version: 15.3/15E204a
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.9
    path: /usr/bin/javac
  Ruby:
    version: 3.2.1
    path: /Users/...../.rbenv/shims/ruby
npmPackages:
  "@react-native-community/cli": Not Found
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.74.3
    wanted: 0.74.3
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: true
  newArchEnabled: false

Additional context
Versions:
package.json
"react-native": "0.74.3",
"newrelic-react-native-agent": "1.4.3",

Podfile.lock:
- newrelic-react-native-agent (1.4.3):
    - NewRelicAgent (~> 7.5.1)
    - React

StartAgent:
NewRelic.startAgent(Platform.OS === 'ios' ?  I picked newrelic because of its logging feature! this is critical to me

can also confirm that this is happening in both development builds (using expo dev client) and in production builds (without the dev client)

Update: I've written up a small and hacky workaround. I have overridden my most-used console functions (console.log, .warn, .error, etc), and now post messages to the NewRelic logging api.
import { inspect } from "util";

const defaultConsoleLog = console.log;
const defaultConsoleWarn = console.warn;
const defaultConsoleError = console.error;
const defaultConsoleInfo = console.info;
const defaultConsoleDebug = console.debug;

export async function sendToNewRelic(level: string, message: string) {
  return new Promise((resolve, reject) => {
    fetch(`https://log-api.newrelic.com/log/v1?Api-Key=${process.env.EXPO_PUBLIC_NEW_RELIC_API_KEY}`, {
      method: "POST",
      body: JSON.stringify({
        level,
        message
      })
    }).then(res => {
      if (res.ok) {
        resolve(res);
      } else {
        defaultConsoleError("Error sending log to new relic: ", res);
        reject(res);
      }
    }).catch(err => {
      defaultConsoleError("Error sending log to new relic: ", err);
      reject(err);
    });
  });
}

/* eslint-disable @typescript-eslint/no-explicit-any */
function cleanArgs(args: any[]) {
  return args.map(arg => {
    if (typeof arg === "object") {
      return inspect(arg, { depth: 1 });
    } else {
      return arg;
    }
  });
}

console.log = (...args: any[]) => {
  defaultConsoleLog(...args);

  const cleanedArgs = cleanArgs(args).join(" ");
  sendToNewRelic("info", inspect(cleanedArgs, { depth: 1 }));
};

console.warn = (...args) => {
  defaultConsoleWarn(...args);

  const cleanedArgs = cleanArgs(args).join(" ");
  sendToNewRelic("warn", inspect(cleanedArgs, { depth: 1 }));
};

console.error = (...args) => {
  defaultConsoleError(...args);

  const cleanedArgs = cleanArgs(args).join(" ");
  sendToNewRelic("error", inspect(cleanedArgs, { depth: 1 }));
};

console.info = (...args) => {
  defaultConsoleInfo(...args);

  const cleanedArgs = cleanArgs(args).join(" ");
  sendToNewRelic("info", inspect(cleanedArgs, { depth: 1 }));
};

console.debug = (...args) => {
  defaultConsoleDebug(...args);

  const cleanedArgs = cleanArgs(args).join(" ");
  sendToNewRelic("debug", inspect(cleanedArgs, { depth: 1 }));
};
/* eslint-enable @typescript-eslint/no-explicit-any */

This is not ideal. I would rather not have to inject my own logic into global functions that are very often used. This method also loses quite a lot of useful metadata that I believe NewRelic would otherwise capture, but it's better than nothing.
I also tried my hand at debugging this library to see where along the chain the messages were getting lost, but the debugger took me all the way to the bridge between JS <-> native code and I still hadn't found the issue without having to plunge into native-land. Unfortunately, though I am skilled at debugging, I am not skilled enough to beat my debugger into following native code in addition to JS-land code, and so the trail went cold.

Thanks @bdotsamir. I agree with you it does seem like a lot of useful metadata is getting lost :(
Honestly it feels like the newrelic team doesn't care about the companies that uses react native. Sadly :( My hands are tied to new relic because of management decisions and history.

@arelstone @bdotsamir did you enable log reporting on application settings page?

@arelstone @bdotsamir did you enable log reporting on application settings page?

Yea, on my side log collecting is enabled @ndesai-newrelic

@arelstone @bdotsamir did you enable log reporting on application settings page?

Hello, thank you for following up. My team has actually moved off of New Relic in favor of Data Dog because of an unrelated issue with android clients crashing on exit. #183

@bdotsamir the issue is fixed in 1.4.4.
Regarding the Recent Application Crash Issue
We sincerely apologize for the inconvenience caused by the recent application crashes when transitioning to the background. We understand your frustration, and we'd like to provide a detailed explanation of what occurred and the steps we're taking to prevent similar issues in the future.
Root Cause
The issue arose due to a complex interaction between our Android and NDK agent releases:

We use a "+" convention for version numbering of both Android and NDK agents, which automatically pulls the latest versions during builds.
The Android and NDK agents were released in quick succession.
Our testing did not catch the scenario where a newer NDK agent was paired with an older Android agent.

This led to a method not found error, initially misdiagnosed as an NDK-side issue. Our attempt to resolve it by reverting NDK changes in an NDK agent release did not address the core problem: a version mismatch between the Android and NDK agents.
Our Response and Future Prevention
To prevent similar issues in the future, we are implementing the following measures:

More comprehensive testing scenarios on version compatibility between components.
Modifying our release process to ensure thorough validation of all agent combinations.
Reconsidering our use of the "+" convention for version numbers to have more predictable builds.

Moving Forward
We value your trust and are committed to delivering a stable and reliable React Native agent. We will conduct more thorough testing for future releases to prevent such issues from recurring.
If you need any additional information or clarification regarding this issue, please don't hesitate to reach out. We're here to address any concerns you may have.
Thank you for your patience and understanding as we work to improve our product and processes.

@ndesai-newrelic Thank you for the post-mortem. Glad to see that the team is taking things like this seriously. Should the need arise for us to switch off of Data Dog in the future, we'll consider New Relic once again.


Use jsonstream instead of JSONStream

See https://github.com/substack/node-browserify/pull/1247 for more details.

Published as<EMAIL_ADDRESS>


UnicodeDecodeError for profile names without ASCII characters

I'm submitting a ...

[x] bug report
[ ] feature request
[ ] support request

General infomration
r5342284 downloaded as zip and installed as is on LibreELEC
/resources/lib/KodiHelper.py
unescaped_profile_name = html_parser.unescape(enc_profile_name)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xce in position 0: ordinal not in range(128)
Description

EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--

NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
Error Type: <type 'exceptions.UnicodeDecodeError'>
Error Contents: 'ascii' codec can't decode byte 0xce in position 0: ordinal not in range(128)
Traceback (most recent call last):
File "/storage/.kodi/addons/plugin.video.netflix/addon.py", line 33, in
NAVIGATION.router(paramstring=REQUEST_PARAMS)
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/utils.py", line 60, in wrapped
result = func(*args, **kwargs)
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/Navigation.py", line 148, in router
return self.show_profiles()
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/utils.py", line 60, in wrapped
result = func(*args, **kwargs)
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/Navigation.py", line 592, in show_profiles
build_url=self.build_url)
File "/storage/.kodi/addons/plugin.video.netflix/resources/lib/KodiHelper.py", line 228, in build_profiles_listing
unescaped_profile_name = html_parser.unescape(enc_profile_name)
File "/usr/lib/python2.7/HTMLParser.py", line 476, in unescape
File "/usr/lib/python2.7/re.py", line 155, in sub
UnicodeDecodeError: 'ascii' codec can't decode byte 0xce in position 0: ordinal not in range(128)
-->End of Python script error report<--

Installation

[x] I installed the plugin via zip from the Releases page
[ ] I´m using the Netflix Repo
[ ] I´m using a different source (Please tell which)

Operating System

[ ] Linux (x86/x64)
[ ] OSX (x86/x64)
[ ] Windows (x86/x64)
[x] Linux (ARM)
[ ] Android

Additional informatin on the environment
18.0-RC1 Git:newclock5_18.0rc1-Leia
Linux ARM 32-bit
Using Release Kodi x32 build (version for Raspberry Pi)
Kodi compiled Nov 25 2018 by GCC 8.2.0 for Linux ARM 32-bit version 4.19.4 (267012)
Running on LibreELEC (official): 8.90.008 9.0, kernel: Linux ARM 32-bit version 4.19.4
Debug log
http://paste.kodi.tv/bonaruvaze

Just strike me. One of the profile names of my Netflix account is written Greek. I will change it to English and retest in some hours. However, if proven right, it's definitely a kind of bug. Or improvement, if you prefer. I guess you can get this kind of error from lot of languages.

Just strike me. One of the profile names of my Netflix account is written Greek. I will change it to English and retest in some hours. However, if proven right, it's definitely a kind of bug. Or improvement, if you prefer. I guess you can get this kind of error from lot of languages.

Verified. I rename all profiles with ASCII characters and I see the page to select profile.
I guess not crucial but will be nice to work with more than just ASCII characters.


Add support to run a component reconciler without calling a REST API to CLI

Description
Currently, the CLI starts a component reconciler always as standalone microservice which has to be called via its REST API. This makes testing for reconciler times unnecessary complicated if they only want to trigger their component reconciler.
To address this disadvantage, the CLI command ./bin/reconciler reconciler test ... has to support the option to start a particular component reconciler embedded (without an surrounding webserver) and to all it directly.
AC:

CLI supports starting a component reconciler without a REST API (embedded) and runs it directly
CLI is extended (maybe by a flag) to indicate whether the component reconciler should be started with an REST API or embedded

Reasons
Simplify development and testing of component reconcilers.
Attachments

Implemented in #113


chore: Refactor the configuration format

Change description
In order to match the Test driven Happiness, let's reshape the  .restqa.yml file format.
Type of change

[ ] Bug fix (fixes an issue)
[X] New feature (adds functionality)

Related issues
Fix #184
Fix #189
Fix #185
Checklists
Development

[ ] Lint rules pass locally
[ ] Application changes have been tested thoroughly
[ ] Automated tests covering modified code pass

Security

[ ] Security impact of change has been considered
[ ] Code follows project security practices and guidelines

Code review

[ ] Pull request has a descriptive title and context useful to a reviewer. Screenshots or screencasts are attached as necessary
[ ] Changes have been reviewed by at least one other contributor
[ ] Pull request linked to issue tracker where applicable

In overall i added the skip on all the Dashboard feature this since one is not a priority anymore


doesnt work on wayland

this crate does not work on wayland..

Do you have xwayland installed ? This library interfaces with XLib, Xwayland should give you a compatibility layer there.

Do you have xwayland installed ? This library interfaces with xcb, Xwayland should give you a compatibility layer there.

I have same problem here i have xwayland installed and i get same error when i try to locate my dolphin window in focus or anything that is not using xwayland itself (example it works on discord, jetbrains apps...) but anything outside it cant find

Yeah, looks like this can't detect wayland programs, only xwayland ones. Maybe this is possible with a portal?

Yeah, looks like this can't detect wayland programs, only xwayland ones. Maybe this is possible with a portal?
There's an extension which could be adopted, but not a lot of compositors support it. https://github.com/activitywatch/aw-watcher-window-wayland

Im suprised wayland itself still does not seem to have a protocol for this.... even if it would be under ext category of them (atleast as far as i know it does not have any standard protocol) while compositors themself might have one for their use... Would be annoying to implement for every single one but most common ones should not be an issue.

It has a protocol, but it's not adopted. Unfortunately this is how Wayland works, each compositor has to adopt the extension protocols. Kwin does not support it either, I tried.

It has a protocol, but it's not adopted. Unfortunately this is how Wayland works, each compositor has to adopt the extension protocols. Kwin does not support it either, I tried. Afaik there's no way to do it without these protocols being supported, this is the security model of Wayland.

Yea sadly guess it just wont work on wayland for now...  which is sad to see as this is very useful library.


training speed too slow

My progress is too slow for my training time My GPU utilization is 99 percent and working fine
My graphics card is an RTX 2060

 My progress is too slow for my training time My GPU utilization is 99 percent and working fine My graphics card is an RTX 2060

I think it's normal, it would take 10 hours for 3090 to train 100000 steps.


Marker Shadow is not shown with custom icons, on v. 1.0.1

[yes] I'm reporting a bug, not asking for help
[yes] I've looked at the documentation to make sure the behaviour is documented and expected
[yes] I'm sure this is a Leaflet code issue, not an issue with my own code nor with the framework I'm using (Cordova, Ionic, Angular, React…)
[yes] I've searched through the issues to make sure it's not yet reported

How to reproduce

Leaflet version I'm using: Leaflet 1.0.1+ffcfcc1
Browser (with version) I'm using: All Major Browsers
OS/Platform (with version) I'm using: Windows 10

What behaviour I'm expecting and which behaviour I'm seeing
I am using this code to set icons options:
    var mobile_zoom_factor = 1.3; L.Icon.Default.imagePath = '{{ settings.img_folder }}/leaflet/';
    mainIcon = L.icon({
      iconUrl: L.Icon.Default.imagePath + 'marker-icon.png',
      iconSize:     [24*mobile_zoom_factor, 32*mobile_zoom_factor],
      iconAnchor:   [12*mobile_zoom_factor, 32*mobile_zoom_factor],
      popupAnchor:  [0, -32*mobile_zoom_factor],
      shadowUrl: L.Icon.Default.imagePath + 'marker-shadow.png',
      shadowRetinaUrl: L.Icon.Default.imagePath + 'marker-shadow.png',
      shadowSize:   [41*mobile_zoom_factor, 41*mobile_zoom_factor],
      shadowAnchor: [14*mobile_zoom_factor, 41*mobile_zoom_factor]
    });

Then i add marker to the map:
var marker = new L.Marker(new L.LatLng(this.geox, this.geoy), {icon: mainIcon}).bindPopup(popup);

And with Leaflet v.1.0.1 there is no shadow (it exists in DOM, but shadow image is not visible. I tried to change z-index of the img, shadow-pane - but seems like this is not the nature of the problem).
When i change leaflet.js to v 0.7.7, marker shadow become visible (i change nothing but that).
Please check.

@git-webmaster Please check if this is reproducible after the changes in https://github.com/Leaflet/Leaflet/pull/5046

Wait, you're using rev ffcfcc1 ? That change should be there then.
Can you publish a fiddle/codepen/playground that displays this behaviour?

I was experiencing this in ffcfcc1 too, but just upgraded to the 1.0.2 release which no longer exhibits this behavior.

I have the same issue. Its only working on the basic icon. Not on custom icons.

@Cagdas88 can you provide a running example that reproduces this, for example on http://playground-leaflet.rhcloud.com/ ?

OK here i set up with a blank icon and with its shadow url...
BTW on playground-leaflet is the latest version of leaflet 1.0.0. but it shows that it not work with the shadows too....
Im using the 1.0.3 version.
http://playground-leaflet.rhcloud.com/caqi/edit?html,output

@Cagdas88 from what I can tell, you're using DivIcon, and even though it inherits from Icon it does not have exactly the same functionality. Among other things, it does not have builtin shadow support; as the documentation notes:

Inherits from Icon but ignores the iconUrl and shadow options.

. If you need a shadow in a DivIcon, you need to add it yourself.

this is my compleate divIcon:
                    L.divIcon({
                        iconSize: [35, 45],
                        iconAnchor:   [17, 42],
                        popupAnchor: [1, -32],
                        shadowAnchor: [10, 12],
                        shadowSize: [36, 16],
                        shadowRetinaUrl<EMAIL_ADDRESS>                        shadowUrl: 'assets/img/markers/markers-shadow.png',
                        html: '' +
                        ' '
                    })

This does not work for me..

@Cagdas88 as mentioned in my comment above, DivIcon does not support shadows.

ok. why are the options than available for the divicon?
In a past project does this work. The reason why im using the divIcon is because the html option.
What you mean exactly with "If you need a shadow in a DivIcon, you need to add it yourself". how i add them?

@Cagdas88 again, as mentioned above, the docs clearly state that the shadow options are ignored.
Since you can create any HTML inside the div, you have plenty of options how to create a shadow. Exactly how is outside the scope for this issue tracker, this is more of a general HTML question than specific to Leaflet.

Hi.
Just got a notification about this.
Actually, i was not using DivIcon. I was using this code:
L.Icon.Default.imagePath = 'some-path';

                    var mainIcon = L.icon({

                        iconUrl: L.Icon.Default.imagePath + 'marker-icon.png',
                        shadowUrl: L.Icon.Default.imagePath + 'marker-shadow.png',

                        iconSize:     [24, 32],
                        shadowSize:   [41, 41],
                        iconAnchor:   [12, 32],
                        shadowAnchor: [14, 41],
                        popupAnchor:  [0, -32]
                    });

var this_org_mark = L.marker([x, y], {icon: mainIcon}).addTo(leaflet_map);

this_org_mark.bindPopup("lorem ipsum");

Sorry for the outlink, but here is an live example of what's discussed here:
https://unilocal.net/united-states/new-york/martin-cohen-and-company-attorney-at-law (source code line 1021)
Just activate the map, and see that there is no shadow - but it must be there according the code above.
I have just tried last release version of leaflet in local environment - and see no changes.
I will try to reproduce this in sandbox little bit later.

@git-webmaster yes, my reply was to @Cagdas88, the thread has been a bit side tracked. As far as I can tell, the issue you've reported is still valid.

Revisiting this, from looking at your example, I notice Chrome devtools says your shadow image is 0x41 pixels when displayed, although the natural size is 41x41 pixels. This is a bit perplexing, since the element's style has width: 41px.
However, borrowed your icon configuration and set up a minimal example using the same images as well as the configuration code from your sample above: https://plnkr.co/edit/HBs6K6rddLbqRDLa3Ssi?p=preview
In this example, the shadow works as expected for me, and is shown as 41x41 pixel. So, it looks to me like there is something going on on your page that causes the browser to draw the shadow with the wrong size.
I'm going to close this as we don't have a minimal example reproducing this, but I'm happy to reopen if we can reproduce it with code we can see.


⚠ Bofrost.be has degraded performance

In 23022f2, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1898 ms

Resolved: Bofrost.be performance has improved in d2f7916.


Raise a WARNING when someone tried to load the best checkpoint when one has not been set.

🚀 Feature
Raise a WARNING when someone call:
Trainer.test(ckpt_path='best')
or
Trainer.test(ckpt_path='best')
if there is no user-defined ModelCheckpoint in callbacks
Motivation
I'm frustrated when there is a deadline approaching, and I need to update my PL to the latest version, and it breaks a bunch of things, and one of thing that silently break is the model checkpointing.
If someone is calling Trainer.test(ckpt_path='best') they are expecting the best model to be loaded, not the latest model. If it is loading the latest model instead (due to user-defined ModelCheckpoint was not set), please raise a warning and not just silently load the latest model. Freaked me out real bad, I literally lost sleep over this.
Pitch
Raise a WARNING when someone call:
Trainer.test(ckpt_path='best')
or
Trainer.test(ckpt_path='best')
if there is no user-defined ModelCheckpoint in callbacks
Alternatives
None
Additional context
None
cc @tchaton @justusschock @awaelchli @borda @ananthsub @ninginthecloud @rohitgr7 @carmocca @jjenniferdai

Hi @aprbw! Sorry that you had a bad experience with this.
When you create a Trainer(), we add a instance ModelCheckpoint() internally as long as you don't set Trainer(enable_model_checkpointing=False).
This ModelCheckpoint() instance by default has monitor=None which means it doesn't track any specific logged value, instead the last model saved.
Instances with this configuration still set best_model_path, the attribute checked with test(ckpt_path='best').
Even though this was confusing to you, this is expected behavior for other users who want to set 'best' and forget without having to take into account the particular checkpointing configuration.
I am not sure we can show a warning here because this is intended.
On a similar vein: https://github.com/PyTorchLightning/pytorch-lightning/issues/12485

Sorry that you had a bad experience with this.

Sorry about my rant.

Instances with this configuration still set best_model_path, the attribute checked with test(ckpt_path='best').

I see, so there are cases where this is a desired behavior. However, I still think that this is still confusing. I'm also not sure what the correct solution should be.


Revalidation requests should pass through extensions from caller.

Fixes #247 behaviour so that transport implementation behaves the same as pool implementation.
I used unittest.mock.AsyncMock and its sync counterpart to check that the extensions are actually passed to the decorated transport/pool, I know this is not an existing practice in the current codebase, please tell me if you have an alternative for this.

Can we use something like this, as an alternative ?
import hishel
from hishel._utils import BaseClock
import httpx

from unittest.mock import Mock

class ExtensionMirrorTransport(hishel.MockTransport):

    def handle_request(self, request: httpx.Request) -> httpx.Response:
        response = super().handle_request(request)
        response.extensions["request_extensions"] = request.extensions
        return response

def test_transport_revalidation_forward_extensions():
    class MockedClock(BaseClock):
        current =<PHONE_NUMBER>  # Mon, 25 Aug 2015 12:00:00 GMT

        def now(self) -> int:
            return self.current

    clock = MockedClock()
    controller = hishel.Controller(clock=clock)

    with ExtensionMirrorTransport() as transport:
        transport.add_responses(
            [
                httpx.Response(
                    200,
                    headers=[
                        (b"Cache-Control", b"max-age=1"),
                        (b"Date", b"Mon, 25 Aug 2015 12:00:00 GMT"),
                    ],
                ),
                httpx.Response(
                    304,
                    headers=[
                        (b"Cache-Control", b"max-age=1"),
                        (b"Date", b"Mon, 25 Aug 2015 12:00:01 GMT"),
                    ],
            ]
        )
        with hishel.CacheTransport(
            transport=transport, controller=controller, storage=hishel.InMemoryStorage()
        ) as cache_transport:
            # first request with extensions
            response = cache_transport.handle_request(
                httpx.Request("GET", "https://www.example.com", extensions={"foo": "bar"})
            )
            assert response.extensions["request_extensions"]["foo"] == "bar"

            # cache expires
            clock.current += 1

            # second request with extensions that should be passed to revalidation request
            response = cache_transport.handle_request(
                httpx.Request("GET", "https://www.example.com", extensions={"foo": "baz"})
            )
            assert response.extensions["revalidated"] is True
            assert response.extensions["request_extensions"]["foo"] == "baz"

    def handle_request(self, request: httpx.Request) -> httpx.Response:
        response = super().handle_request(request)
        response.extensions["request_extensions"] = request.extensions
        return response

Ok

Does not really work though, because if the revalidation response is not sent back (because revalidation indicated the stale cached version could be used, for example), then this "mirror" won't be available from the caller. using the response as a bearer looks clumsy anyway, I'll try another approach.

Any change tot get this merged/released? Is there anything more you're waiting from me on this regard? Thanks!

Sorry for delayed answer, I have tried to figure out why extension mirroring didn't work.
I guess it's not because we are getting the response directly from the cache, it's because we are getting the original response, and not the response of the revalidation request, so yes, your solution seems like fixed that problem.

Thanks for the PR 🙏


Cpp operator

This allows non-member operators to be specified with cppclasses, and ensures they're looked up correctly when used.
cdef extern from "somefile.hpp":
  cdef cppclass C:
     C operator+(int, const C&) # this line now creates something usable
  # alternative existing syntax outside the class
  C operator*(int const C&)

The reason this is useful is because, although non-member operators could be defined outside the class (as shown for operator*, above) they aren't easily accessible when cimporting for .pxd files (which is probably a separate bug).
Looking at the C++ standard library wrappings, people seem to have assumed that this method of wrapping non-member operators already works and written operators in this form.
I've also defined appropriate tests, and updated the documentation.

I've re-based this so it should merge cleanly again.
To make the case for this change again:
This does introduce a small amount of extra allowed syntax when wrapping C++ operators. However, the main benefit is that the whoever wrote the pxd files for the standard library assumed this syntax was allowed and used it. Therefore the change lets some bits of the standard C++ standard library work that didn't work before.

Would be great to get this merged...


ESP32: Some pins are not properly configured

See errata 3.6, we currently have a fix for this (https://github.com/esp-rs/esp-hal/blob/f315d2bf09f059d543aaac6783cee79217aa612d/esp-hal-common/src/soc/esp32/gpio.rs#L575-L658) but is not always called, e.g. the i2c constructor does not apply this workaround.

Even with ESP-IDF (e.g. with a changed i2c_simple_main.c example) I don't get I2C to work on these pins without external pull-ups

This even fails for simple gpio input with pull up (at least with gpio33).  Using the following leaving gpio33 unconnected and it waits for gpio33 top go high - it should be pulled up but it keeps waiting.
#![no_std]
#![no_main]

use esp_backtrace as _;
use esp_println::println;
use hal::{clock::ClockControl, peripherals::Peripherals, prelude::*, Delay, IO};

#[entry]
fn main() -> ! {
    let peripherals = Peripherals::take();
    let system = peripherals.SYSTEM.split();

    let clocks = ClockControl::max(system.clock_control).freeze();

    let io = IO::new(peripherals.GPIO, peripherals.IO_MUX);
    let input = io.pins.gpio33.into_pull_up_input();

    let mut delay = Delay::new(&clocks);

    loop {
        println!("wait for high...");
        while input.is_low().unwrap() {
            delay.delay_ms(10u32);
        }
        println!("wait for low...");
        while input.is_high().unwrap() {
            delay.delay_ms(10u32);
        }
    }
}

I found that for gpio32 and gpio33 they were reversed in the errata36 function.  I'll send a PR.
Based on the datasheet:
gpio32 = x32p
gpio33 = x32n

PR added #1053

Closed by #1053


Regex Tester - match highlighting wrong when it spans multiple lines

Current behavior
On the Regex Tester, if you've selected the Singleline option and are testing a Regex that matches some text which spans multiple lines, the highlighting goes past the end point of the match.  The amount it's "wrong" by increases with each additional newline inside the match itself.
How to reproduce it (as minimally and precisely as possible)
Text -> Regex Tester
Configuration:  Ignore Case, Singleline
Regular expression:
.*?

Text:
`
a
a
a
a
a
a
a
a

CONFIDENTIALITY NOTICE:`
Expected behavior
You would expect it to highlight from the start of
 to the end of
 but instead the highlighting goes to the end of
CONFI.  Adding another line inside the table tags of the text further offsets the highlighting.
Screenshots

Workaround
No response
Affected platforms
Windows
Affected DevToys kind
DevToys (app with GUI)
DevToys Version
Version <IP_ADDRESS> | X64 | RELEASE | 2706c6c2 | 2706c6c2
Relevant Assets/Logs
No response

I apologize in advance - markdown is messing with the HTML I was using in this example.  I'm adding a screenshot of what the text to search actually looks like:

Hi,
This is fixed in DevToys 2.0, which will be released in a few weeks.


SUBMARINE-580. Add an api for user login.

What is this PR for?
Add an api for user login.
What type of PR is it?
Improvement
Todos

[ ] - Task

What is the Jira issue?
https://issues.apache.org/jira/browse/SUBMARINE-580
How should this be tested?
https://travis-ci.org/github/Eroschang/submarine/builds/711914135
Screenshots (if appropriate)
Questions:

Does the licenses files need update? Yes/No
Is there breaking changes for older versions? Yes/No
Does this needs documentation? Yes/No

Could you take a look at test failure?

I've fixed SDK checkstyle in #365
After the pr is merged, you could rebase your branch.


Lease renewal: inconsistency between Lease.renew() and Lease.isExpired()

There seems to be an inconsistency between the two following methods (from com.netflix.eureka.lease.Lease:
public void renew() {
    lastUpdateTimestamp = System.currentTimeMillis() + duration;
}

public boolean isExpired() {
    return (evictionTimestamp > 0 || System.currentTimeMillis() > (lastUpdateTimestamp + duration));
}

When the lease is renewed, the lastUpdatedTimestamp is set to now() + the expected client lease renewal period. It therefore represents when the lease is about to expire and not when it was last renewed.
To check if the lease is expired, the isExpired() method adds again the duration to the lastUpdateTimestamp - hence the lease will expire only after two times the duration.
Finally, javadocs on the getLastRenewalTimestamp() clearly defines the actual meaning of the lastUpdateTimestamp:
/**
 * Gets the milliseconds since epoch when the lease was last renewed.
 *
 * @return the milliseconds since epoch when the lease was last renewed.
 */
public long getLastRenewalTimestamp() {
    return lastUpdateTimestamp;
}

Conclusion: the renew() method seems to be broken: it shouldn't add the duration to the current time.

@brenuart thanks for point this out, this indeed looks to be the case. We'll take a look at the impact of this and get back to you on whether we fix or update the comments (as this code is very old and been working in our production for a while, this unintended behaviour may be something that clients now expect, and is therefore potentially harmful to change). Thanks again.

The self protection mode of our Eureka got activated for some reason so lease expiration was temporarily suspended. We then had a look at the registry lease data searching for instances that expired... and discovered that some had their lastRenewalTimestamp in the future... This is how we discovered the issue.

Comments updated in #537


Remove ListBox sort during add

Reference: #479
Remove feature where ListBox tries to resort the list when new items are added. This is a rather inefficient way to keep the list sorted. Instead, items should be pre-sorted before being added, or should all be added at once, and then sorted.
Curiously, removing most of this feature means the FileIo list box will now be sorted, where it wasn't sorted before. This is because it manually called sort(), which previously did nothing if the sorted property wasn't set to true first.

Ok, I'm going to merge this now. Pretty sure the code is good. Just it's one of those changes I wanted you to be aware of.


Adding default l3afd.cfg for Docker image

We need to use this file https://github.com/l3af-project/l3afd/blob/main/config/l3afd.cfg instead of creating new one.


Fix template path for tests.yml

There was a change in the pipeline template jobs that moved archetype-sdk-tests.yml to a different folder. This PR is to point to the proper path.

I'd recommend waiting on thoughts from @benbp before merging, as he's been the driver behind many of the recent improvements to the pipeline.


Add a tag to stop user from editing anything.

I was testing the widget and I found we can edit the output and the path.
Then the widget became what a mess.
I through a simple solution to fix it:

Create a uneditable tag.
Add it to the path output and command output.

I had fixed that with the left right up commands...

？

But I can still delete things.

So clicking needs a bind.

Is there a way to give a readonly tag?

So clicking needs a bind.

I prefer use a tag to set the text above it read only.

There's no built in way but I can create one.

There's no built in way but I can create one.

WOW! How?

Bind all keypresses and button clicks and determine if the end result would be on top of any of the tag ranges. If it is, cancel the action otherwise allow it. Up and down get special treatment.

Bind all keypresses and button clicks and determine if the end result would be on top of any of the tag ranges. If it is, cancel the action otherwise allow it. Up and down get special treatment.

Good idea, but bind a lot maybe make the program slow.

It'll be fast enough :).

@littlewhitecloud I'm going to do a ton of work tomorrow on the repo (eastern time US) so buckle up :D.

@littlewhitecloud I'm going to do a ton of work tomorrow on the repo (eastern time US) so buckle up :D.

So I think We should split it out from the improve pr, create a new one and starting our trip :)

self.index = 0
…
self.text.bind(“Left”, self._left)
self.text.bind(“Right”, self._right)
self.text.bind(“Click”, self._click)

def _left(self, event):
    self.index += 1
    if self.index > 0:
       self.text[“state”] = “normal”
def _right(self, event):
    self.index -= 1
    if self.index < 0:
        self.text[“state”] = “readonly”

def _click(self, event):
    self.index = #cursor index

My form, but still have a lot of logic problem, fix it later.

Clear also needs to be a special command for typing.

Mine should be able to be put in a duct allowing for better handling. I'll need to finish the handler but I have a feeling it will work well.

Mine should be able to be put in a duct allowing for better handling. I'll need to finish the handler but I have a feeling it will work well.

How long will it take?

If it still take a long time, maybe we should fix it in another pr. Just use mine version as a temp solution. When you are finished, we can remove mine can replace with your solution.

Yeah. I'd merge the PR and when I have a free week I'll make a big update PR.


[keychain] yarn test fails with TypeError: Cannot read property 'runInContext' of undefined

In directory packages/keychain run yarn test  and see
TypeError: Cannot read property 'runInContext' of undefined
at NodeEnvironment.runScript (../../node_modules/jest-environment-node/build/index.js:146:21)

Not sure what is wrong or how to configure my environment.

I'm closing this as it's no longer relevant to this repository


List events I'm participating

From @kyyberi on October 15, 2015 5:58
As a member I want to see list of events I have RSVP'd.
Copied from original issue: APIOps/portal#12

This issue was moved to APIOps/apiops-meetup#18


Clean up menu design

Originally phildenhoff/logseq-hypothesis#1
Updates the menu design to be a little more user-friendly. At the same time, it adds (rudimentary) light/dark themeing support.
Unfortunately, some incantation I typed brought the vertical & horizontal scrollbars back. That wasn't my intention, but I also cannot, for the life of me, fix it. Maybe someone else can sort that out 😅
Before

After
Light

Dark

Hi @c6p — I think I addressed all your comments in phildenhoff/logseq-hypothesis#1 so I moved the PR here for your approval (and further discussion). In hindsight, I probably should've just opened it here...


[Feature]: a creative only waystone which can be placed but cant be broken in survival

Description
something like what naturally generated waystones do but being able to place them anywhere we want
Describe the solution you would like
or even an item can be added that makes a waystone unbreakable
Anything else?
No response

While an option in waystones to do this natively would be better, you can work around this by using Minecrafts Debug Stick to change the "generated" blockstate to "true". This would achieve the same.


Updating changelog/version number

I missed the changelog and version number so this updates those in regards to the latest changes

:+1: :shipit:

:+1:


Support for Q

I'm looking to see what is needed for Q (http://harelba.github.io/q/) to use the DuckDB Python package instead of sqlite3. At the start I see that Q calls create_function and executemany which are either not supported by DuckDB, or are implemented differently.
Before I go too far, could a DuckDB backend improve query times when aggregates are involved? For example "SELECT key, count(*) FROM file.csv GROUP BY FILE" ?

@kmatt, yes, aggregates are certainly a kind of query where DuckDB can improve. Adding executemany() and create_function to the Python client should be fairly straightforward.

@kmatt, Out of curiosity, what would you like to use executemany() for? data loading?

We now support executemany(), can you have a look? @kmatt

Tracking the create_function in a separate issue #471 and closing here.


Missing module dependencies

#5255
Summary
When trying to import some specific core functionalities, there a no documentation around which module needs to be imported in which order and the only way to make it work it by trial and error. Modules themselves should properly declare their dependencies through imports so that as a developer, we can choose which module (ie. ProductModule) to import without having to figure out its inner dependencies. As an example, the GlobalMessageModule is required for the ProductModule effects, but is not imported.
Environment Details

Spartacus:  Latest
Browser: N/A
OS: N/A
Device: N/A
Other environment details: N/A

Steps to Reproduce
Import the core/ProductModule without importing GlobalMessagesModule.
Observed Results
Missing providers for GlobalMessagesModule
Expected Results
ProductModule should properly define / import its dependencies.

@tobi-or-not-tobi do you have feedback on what we should do here please?


selecting 0.5 reloads the page as same 0.6 preliminary

ping ? it's quite odd to not be able to select the 0.5 release which has been out for weeks
also 0.6 is out now as well and needs release notes

part of the fix in #1048

@geeknoid ping - how do users get to 0.5.1 docs ?

guessing #1052 is part of the solution (it'd be great to link PRs to issues...) but still not working
can you just make 0.5 go to 0.5 archive/why not ? (how is it different from 0.4, 0.3...)

The solution is the DNS changes I emailed you about on Friday. Once these
changes are in place, then I can get everything working as expected.

On Mon, Mar 5, 2018 at 12:24 PM, Laurent Demailly<EMAIL_ADDRESS>wrote:

guessing #1052 https://github.com/istio/istio.github.io/pull/1052 is
part of the solution (it'd be great to link PRs to issues...) but still not
working
can you just make 0.5 go to 0.5 archive/why not ? (how is it different
from 0.4, 0.3...)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio.github.io/issues/1034#issuecomment-370552655,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AVucHRYQPBCHU4yALZectcKBjuLYiuGVks5tbZ8LgaJpZM4SSg27
.

Got it working prior to the DNS changes.

thanks!
so we just need 0.7pre now ?

Yes, that's the part that needs the DNS work.
On Mon, Mar 5, 2018 at 6:17 PM, Laurent Demailly<EMAIL_ADDRESS>wrote:

thanks!
so we just need 0.7pre now ?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio.github.io/issues/1034#issuecomment-370637778,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AVucHakx4ztHhyIlpyMFC9_57jTc3-Ijks5tbfHJgaJpZM4SSg27
.


Hugging Face Hub Integration

Hi there!
This project is super cool! Would you be interested in sharing the pretrained models in the Hugging Face Hub? The Hugging Face Hub offers free hosting of models (over 10,000 models have been uploaded by many research organizations) and it would make your work more accessible and visible to others. People would be able to try the model directly in the browser (we're implementing an image captioning widget at the moment). The only thing required would be to upload the models to the Hub. I'm happy to answer any questions about this.
Happy to hear your thoughts,
Omar

Hello Omar,
I would be really interested in sharing the pretrained models in the Hugging Face Hub.
But due to computation constrain, i have not trained the model to it's full potential. I've trained this model just for 30 epochs, but it needs to train for atleast 200 epochs to reach good accuracy. (and it took me more than a week just to provide this 30 epoch baseline on Tesla P100 GPU)
Best wishes,
Sahil Uppal

Hi Sahil!
Thanks for explaining. Even if they checkpoints are not at the full potential, uploading the ones in releases might already be of interest for the community. The Hub repos are versioned, so you can always update them with new ones if you are able to train them more.
Cheers,
Omar

All set then. Can you make me aware of next steps?

I would suggest to do the following

Create an account http://hf.co/
(optional) create an organization for catr (if not, you can just upload the models to your account)
For each model, create a model repo and upload the weights (and any needed config if any).

At this point, your models are already shareable. The next point would be a better integration with the library. We have a step-by-step guide depending on what you want to achieve: https://github.com/huggingface/huggingface_hub/blob/main/docs/adding-a-library.md. There are 3 things that can be done

Downstream support, meaning from your library you can easily load any catr model from the Hub
Upstream support, meaning anyone can upload catr model to the Hub. I personally don't think this will be needed for this integration
Inference API, allowing us to use the widget. This should be straightforward after the downstream support and I'm happy to do it.

Let me know if you have any questions!

Seems great. I will do it very soon, and will update you. Then you can integrate it with widget.
Thank you for assistance.
Best


[Event Request] Codeunit 99000854 - Add. Param. for OnPlanItemAfterCalcIsReorderPointPlanning

Please add new Parameters to Publisher OnPlanItemAfterCalcIsReorderPointPlanning of Codeunit 99000854 "Inventory Profile Offsetting"
Add Parameter ReqLine, PlanningTransparency, PlanningResilicency, CurrTemplateName and CurrWorksheetName to Call of Publisher
                 IsReorderPointPlanning := IsSKUSetUpForReorderPointPlanning(TempSKU);
-                OnPlanItemAfterCalcIsReorderPointPlanning(TempSKU, IsReorderPointPlanning);
+                OnPlanItemAfterCalcIsReorderPointPlanning(TempSKU, IsReorderPointPlanning, ReqLine, PlanningTransparency, PlanningResilicency, CurrTemplateName, CurrWorksheetName);

                 BucketSize := TempSKU."Time Bucket";

Adjust Publisher:
Add Parameters and set var Flag for existing TempSKU Parameter
     [IntegrationEvent(false, false)]
-    local procedure OnPlanItemAfterCalcIsReorderPointPlanning(TempSKU: Record "Stockkeeping Unit"; var IsReorderPointPlanning: Boolean)
+    local procedure OnPlanItemAfterCalcIsReorderPointPlanning(var TempSKU: Record "Stockkeeping Unit"; var IsReorderPointPlanning: Boolean; var RequisitionLine: Record "Requisition Line"; var PlanningTransparency: Codeunit "Planning Transparency"; PlanningResilicency: Boolean; var CurrTemplateName: Code[10]; var CurrWorksheetName: Code[10])
     begin
     end;

Any news on this issue ?

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release.
We will update this issue with information about availability. Please do not reply to this, as we do not monitor closed issues.
If you have follow-up questions or requests, please create a new issue where you reference this one.


Install script not working

Installation breaks after asking for Let's encrypt email address with message:
Error: Cannot query your public address against whoami.akamai.net. Please report the problem on Github!
    at getAddresses (/snapshot/coolify/index.js)
    at expressInstallation (/snapshot/coolify/index.js)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
    at async coolifyMe (/snapshot/coolify/index.js)

Using ubuntu 20.04 fresh install

It looks like your server does not have a public address. Strange.
If you run dig @ns1-1.akamaitech.net ANY whoami.akamai.net +short manually, what is the output?

Thanks.
Running dig @ns1-1.akamaitech.net ANY whoami.akamai.net +short does not produce any output:
rph@coolify:~$ dig @ns1-1.akamaitech.net ANY whoami.akamai.net +short
rph@coolify:~$

But I suppose you have a public IP address, right?

Hi, yes.
If I do wget -qO- http://ipecho.net/plain | xargs echo (for example), I get the correct IP address.

Thanks for the example! I will slightly modify the installation script.

I've modified the installation script a bit. Could you please check again? If it's still not working, please reopen this ticket.
Thanks in advance.

Having a few issues with the install script.  If I don't opt for the github plugin (installation stalls if I do) then I get this on the installation page:
Command: curl -s http://ipecho.net/plain failed


Rotate is break if I use Color

I use rotate and it works fine
emitter.addBehaviour(new Proton.Rotate( new Proton.Span(0, 360), 2, "to" ));
but once I add Color, Rotate stops working

emitter.addBehaviour(new Proton.Rotate( new Proton.Span(0, 360), 2, "to" ));
emitter.addBehaviour(new Proton.Color('ff0000', 'ff0000'));

I there a way to make it work both with Color and Rotate?

P.S. CanvasRenderer

I guess you use both Proton.Body and Proton.Color in CanvasRender. Oh, painting a picture in canvas is a lossy performance operation. Proton uses the canvas cache buffer for painting pictures, so this case does not support simultaneous effect. You can use webgl instead.

In fact, for most practical projects you do n’t need to color a picture

thanks, switched to WebGLRenderer

Looks like WEBGLRenderer doesn't clear by default


Alias folded buffers when possible

This PR allows folded buffers to alias when we can prove it is safe.

Ready to land, or do we need to add additional tests?


[Feature request] extending theme of TextButton

There is no way to modify theme of the TextButton in a way where the TextButton will look like a link in a text.
This is a frequent use case mostly for web platforms where we want to use links in a text.
Expected behaviour:
The following image shows a paragraph from the Flutter documentation. There are 2 links in the paragraph in a blue color. These buttons/links behave in a way when hovered they get brighter.

Also, I'm not able to control behaviour of the textStyle when hovered/clicked etc.
I would like to make the text underlined when hovered and clicked, too.
Also, I want to be able to disable background effects of the TextButton by a single flag and control only the textStyles.
Possible solutions:

Add another type of button
Add theming options to the TextButton

Hi @KristianBalaj,
The TextButton has a style property which is of type ButtonStyle and most of the styles defined in there use MaterialStateProperty which has documentation https://api.flutter.dev/flutter/material/MaterialStateProperty-class.html.
Does that not suffice for your use case?

Ouch you are right.
I was looking only in the  TextButton.styleFrom() method where it is not possible.
However , it looks to be possible with raw ButtonStyle.

Given that this is already possible based on your comment above, I feel it is safe to close this issue.
If you disagree, kindly leave a comment below and I will reopen.
Thank you


python311Packages.mohawk: refactor and remove nose

Description of changes
part of https://github.com/NixOS/nixpkgs/issues/311054

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[x] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 324732 at 3c24ed54 run on x86_64-linux 1

1 package failed to build:

python312Packages.requests-hawk

5 packages built successfully:

alerta
alerta-server
python311Packages.mohawk
python311Packages.requests-hawk
python312Packages.mohawk

https://github.com/NixOS/nixpkgs/pull/325669


Shell, Bucket and Radix Sort

Description
Implement the following sorting algorithms in one PR:

Shell Sort
Bucket Sort
Radix Sort

Additional context
Reference can be taken from geek for geeks but it should be implemented by yourself with your own comments
Important Checklist

[x] I have read the contribution guidelines before making this issue.
[x] I have verified this issue program is not already implemented

Languages and Assignees:

[ ] Python: @
[x] Java: @AtalKhandelwal
[x] C: @priyalgupta09
[ ] C++: @

@kaustubhgupta Please assign it to me I can do it in java

@kaustubhgupta Please assign it to me I can do it in java

@AtalKhandelwal will you be doing all three?
If not please tell me, I'll do the remaining one(s) in Java.

@kaustubhgupta Please assign it to me I can do it in java

@AtalKhandelwal will you be doing all three?
If not please tell me, I'll do the remaining one(s) in Java.

Only one person is allowed to work in one language for one issue

I can do all three in Java

i can do all three in c please assign me. Thank you.

@kaustubhgupta please assign these sorting algorithms to me in C++

I can do it in Java. Assign me any of the 3 sortings.

I will be able to do any of these in Python. Kindly assign these

@kaustubhgupta please assign me the Radix Sort and Bucket Sort

@kartikeyaGUPTA45 You already made your commits and now you will just make new PR. Therefore I will assign this to someone else

please assign me shell sort and radix sort in c language?
Thank you

Hi i would like to implement shell sort, bucket sort,radix sort in c++ , can you assign it to me


GH-2846 transaction settings to control parallel validation and cache

GitHub issue resolved: #2846
Briefly describe the changes proposed in this PR:

new transaction settings to control parallel validation and cache
allow for settings to override Bulk validation and sail level settings

PR Author Checklist (see the contributor guidelines for more details):

[ ] my pull request is self-contained
[ ] I've added tests for the changes I made
[ ] I've applied code formatting (you can use mvn process-resources to format from the command line)
[ ] I've squashed my commits down to one or a few meaningful commits
[ ] every commit message starts with the issue number (GH-xxxx) followed by a meaningful description of the change
[ ] every commit has been signed off

I know this is very late, since we are releasing tomorrow. I just really want this in as the release so that we can eke out the last bit of performance.

Thanks for taking the time to look at this @jeenbroekstra .


Runnin as non root user

The dockerfile does not specifiy a user. From the documentation:

When the user doesn't have a primary group then the image (or the next instructions) will be run with the root group.

We can also see from this blogpost from Docker that it is a best practice to run as non root user.
I have tried to do it by adding
spec:
  securityContext:
    runAsNonRoot: true

to my gubernator pod.

You can see the complete manifest here.
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: gubernator
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: get-endpoints
rules:
  - apiGroups:
      - ""
    resources:
      - endpoints
    verbs:
      - list
      - watch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: get-endpoints
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: get-endpoints
subjects:
  - kind: ServiceAccount
    name: gubernator
---
apiVersion: v1
kind: Pod
metadata:
  name: gubernator
  labels:
    app: gubernator
spec:
  securityContext:
    runAsNonRoot: true
  serviceAccountName: gubernator
  containers:
    - image: ghcr.io/gubernator-io/gubernator:latest
      imagePullPolicy: IfNotPresent
      ports:
        - name: grpc-port
          containerPort: 81
        - name: http-port
          containerPort: 80
      name: gubernator
      env:
      - name: GUBER_K8S_NAMESPACE
        valueFrom:
          fieldRef:
            fieldPath: metadata.namespace
      - name: GUBER_K8S_POD_IP
        valueFrom:
          fieldRef:
            fieldPath: status.podIP
      # Must set the GRPC and HTTP addresses, as gubernator
      # defaults to listening on localhost only
      - name: GUBER_GRPC_ADDRESS
        value: <IP_ADDRESS>:81
      - name: GUBER_HTTP_ADDRESS
        value: <IP_ADDRESS>:80
      # Use the k8s API for peer discovery
      - name: GUBER_PEER_DISCOVERY_TYPE
        value: "k8s"
      # This should match the port number GRPC is listening on
      # as defined by `containerPort`
      - name: GUBER_K8S_POD_PORT
        value: "81"
      # The selector used when listing endpoints. This selector
      # should only select gubernator peers.
      - name: GUBER_K8S_ENDPOINTS_SELECTOR
        value: "app=gubernator"
      # Gubernator can watch 'endpoints' for changes to the peers
      # or it can watch 'pods' (Defaults to 'endpoints')
      # - name: GUBER_K8S_WATCH_MECHANISM
      #  value: "endpoints"
      # Enable debug for diagnosing issues
      - name: GUBER_DEBUG
        value: "true"
      # Defines the max age of a client connection
      # Default is infinity
      # - name: GUBER_GRPC_MAX_CONN_AGE_SEC
      #  value: "30"

  restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
  name: gubernator
  labels:
    app: gubernator
spec:
  type: LoadBalancer
  ports:
  - targetPort: 80
    port: 80
  selector:
    app: gubernator

This does not work. It fails with:
Error: container has runAsNonRoot and image will run as root (pod: "gubernator-794fb7b76f-6vntp_default(8e4c444e-68ec-4800-9dd5-668a593a7b65)", container: gubernator)

To run as non root user, it would need to change:

Create a non root user in the Dockerfile. This would be ideally done in the build phase, since scratch image does not have the commands to do this. Then switch to the new user in the next phase.
I think the defaults would have to change since they use <IP_ADDRESS>:80 and <IP_ADDRESS>:81, which seems to be by default ports for root users. I could not find documentation on this, but I have tried running it like this and it did not work.

Here is an example script to test these changes in a local K8s cluster.
# delete local cluster if exists
kind delete cluster

# expose load balancer
cloud-provider-kind > cloud-provider-kind.log 2>&1 &
kind create cluster

docker build -t custom-image .
kind load docker-image custom-image:latest
# ensure gubernator pod is using image: custom-image:latest
kubectl apply -f k8s-deployment.yaml

# wait until gubernator is ready
kubectl wait --for=jsonpath='{.status.loadBalancer.ingress}' service/gubernator
kubectl wait --for=condition=Ready pod/gubernator --timeout=5m

# check the pod and service
kubectl get all

# make a request
IP=$(kubectl get service/gubernator -o=jsonpath='{.status.loadBalancer.ingress[0].ip}')
ENDPOINT="http://$IP:80/v1/GetRateLimits"
echo "ENDPOINT IS $ENDPOINT"
curl $ENDPOINT \
  --header 'Content-Type: application/json' \
  --data '{
    "requests": [
        {
            "name": "requests_per_sec",
            "uniqueKey": "account:12345",
            "hits": "1",
            "limit": "10",
            "duration": "1000"
        }
    ]
}'

What do you think @thrawn01? Does this seem possible? Changing the defaults is a bit worrying if that is indeed a requirement to make this work.


[WIP] Add jupyterbook documentation

Initializing pull request.  Adding WIP (work in progress) tag to start, and I will indicate when this is ready to be merged

I've checked in my own fork that this deploys and publishes, but that's with mhedges.github.io as the domain. I will test this on mu2e.github.io/dcs after closing pull request. This will require changing this repository's settings to publish to mu2e.github.io/dcs from the gh-pages branch that is automatically generated and updated on merges with master

Done! It worked.
There is a "Page build warning" complaining about the fact that the gh-pages for repository is orphaned, i.e. there is no mu2e.github.io homepage. I have not encountered any problems with ignoring this warning for now, but it should go away if we ever decide to implement an actual repository/webpage for mu2e.github.io

Done! It worked.
There is a "Page build warning" complaining about the fact that the gh-pages for repository is orphaned, i.e. there is no mu2e.github.io homepage. I have not encountered any problems with ignoring this warning for now, but it should go away if we ever decide to implement an actual repository/webpage for mu2e.github.io


Variable for account entity not available in 'Suspicious application consent for offline access' rule

Describe the bug
The variable 'GrantInitiatedBy' doesn't show up in the "Map Entities" dropdown boxes. Because of this, it's not possible to map the account.
To Reproduce
Steps to reproduce the behavior:

Go to the 'Suspicious application consent for offline access' analytics rule in Azure Sentinel
Click on the 'Set rule logic' tab
Scroll down to the 'Map Entities' section
Click on one of the dropdown boxes that allows you to select a column

Expected behavior
The expected behavior is that the GrantInitiatedBy variable shows up in the dropdown list and that you can select this variable to be mapped with the 'Account' entity
Screenshots

Additional context
This issue causes the Investigate functionality to be unavailable in an incident triggered by this alert because there is no Entity mapped (I only need the user entity).
Direct GitHub link of the analytic rule
https://github.com/Azure/Azure-Sentinel/blob/master/Detections/AuditLogs/SuspiciousOAuthApp_OfflineAccess.yaml

@StefC93 - Thanks for pointing this out, we are investigating.

Yo can only select fields which are in string or datetime format, if you will do tostring(GrantInitiatedBy) it will work

@omerhaimov is correct.  Funny, I tested that initially but tested higher in the query and it did not show up.  @StefC93 - By adding it near the end outside the join, allows it to show up - | extend GrantInitiatedBy = tostring(GrantInitiatedBy).  I will fixup the published query, it will take some time to replicate into the product so you will want to do manually in your rule for now.

@StefC93 - fixed in #1429, also fixed GrantIpAddress and GrantUserAgent so they are available also in entity mapping.


Closing the dialog from web3Modal.connect() does not reject promise

Steps to reproduce:
import Web3Modal from 'web3modal';
import WalletConnectProvider from '@walletconnect/web3-provider';

const providerOptions = {
  walletconnect: {
    package: WalletConnectProvider,
    options: {
      infuraId: process.env.INFURA_ID,
    },
  },
};

const web3Modal = new Web3Modal({ providerOptions });

console.log('open'); // printed to console
const provider = await web3Modal.connect(); // if you close this dialog
console.log('close'); // then this is never reached

I think the problem is here, as you can see reject is never called on CLOSE_EVENT or ERROR_EVENT  https://github.com/Web3Modal/web3modal/blob/96c156858abb824a49eed2c0b4cbcb5302a21feb/src/core/index.tsx#L69-L73

Fixed on v1.6.0


subgraphs are not valid/composable?

I'm wondering if I have the wrong impression.  I was expecting the subgraphs to be valid/composable, but instead I get an error (with router v1.52.0):
apollo-federation-cli validate implementations/apollo-server/products.graphql packages/subgraphs/inventory/inventory.graphql packages/subgraphs/users/users.graphql
thread 'main' panicked at apollo-federation/cli/src/main.rs:115:76:
called `Result::unwrap()` on an `Err` value: Error: union member `Inventory` must be an object type
    ╭─[inventory:31:11]
    │
 31 │ interface Inventory @key(fields: "id") {
    │           ────┬────
    │               ╰────── this is an interface type
    │
    │ Help: Union members must be object types.
────╯

Can you provide a link to a repository that reproduces the issue? What is your supergraph config? How are you running it?
i.e. running following from this project root directory seems to be fine?
make setup
make test subgraph=apollo-server

this repository, apollo-federation-subgraph-compatibility.  After cloning the repo, I run this command from the command line with the router v1.52.0 cli tool
apollo-federation-cli validate implementations/apollo-server/products.graphql packages/subgraphs/inventory/inventory.graphql packages/subgraphs/users/users.graphql

👋 Subgraphs are correct. apollo-federation-cli is currently in alpha/beta and is not something that should be used outside of internal development. rover is our official tooling and should be used instead (and this repo relies on it as well).
Create following supergraph-config.yaml (assumes it is placed at the root dir of this project, if using different location modify paths accordingly)
federation_version: =2.7.8
subgraphs:
  inventory:
    routing_url: http://inventory:4003
    schema:
      file: packages/compatibility/dist/subgraphs/inventory/inventory.graphql
  users:
    routing_url: http://users:4002
    schema:
      file: packages/compatibility/dist/subgraphs/users/users.graphql
  products:
    routing_url: http://products:4001
    schema:
      file: implementations/_template_library_/products.graphql

run rover to generate supergraph
rover supergraph compose --config=supergraph-config.yaml


merge_cubes: Clarified the fourth example. #266

For a better diff view:

Changed the beginning of 4 a bit more:
Before:

Merging a data cube with dimensions (x, y, t / bands) or (x, y, t, bands) with another cube with dimensions (x, y) will join on the x, y dimension

After:

A data cube with dimensions (x, y, t / bands) or (x, y, t, bands) and another data cube with dimensions (x, y) have the same dimension labels in x and y. Merging them will join dimensions x and y


Remove some files that should not be in distributions

Remove OAuth token, style CI config, changelog and readme.

Thank you.
What do you think of having the Readme and Changelog in the package? I've found that helpful when I browse my vendor folder.

In my experience it's not very useful, this information is readily available on Packagist / Github.

But what if Im offline and just want to read the docs about the package I already downloaded?

I put them back for you.

If you merge this #38 can also be closed.
Looking forward to a new release after this also because of #59.

Thank you for this PR.

Yeah, We should make a release.
Could you update the changelog with the latest changes.
It also looks a bit weird...

removed Assert::isTraversable()

Could you investigate and make it ready for 1.4.0?