IR Capture Alternate and Reset Pin

IR Capture Alternate:
Added a new input for game_imagerec.py, capture_screen(). capture_screen() is an alternate to SAVE_FRAMES where the user can determine when to save a frame as opposed to constantly saving frames while the script is running.
Reset Pin information
Added new script, game_simple_reset.py which has base Reset functionality for the Trinket M0s. Adds an input for forcing a reset and also resets the Trinket during the on_prepare() phase.

I have tried to get the  flake8 test and linters to pass but it doesn't seem happy with the class definitions even though I have changed them.
Not totally sure what the black test and linter is breaking on so let me know if I need to do anything.

You can for example run parts of the pipelines locally to figure out the current issues:
flake8:
pip install flake8==3.7.9
flake8 --config=.flake8

black:
pip install black==19.10b0
black --check --diff --config=pyproject.toml .

Alternatively you can use pre-commit, the instructions are in the README.md.
On the git history there seems to be lots of unrelated files added and removed, you can get rid of them with interactive rebase. I can help you with that if that is something you've done before.

Oh wow looks like fixing flake8 issues (it was wanting new lines before the class definitions and not after) also fixed the black issue.  If you want to Feel free to comment on anything else and I will take a look at it or explain why I found it to work best that way.

Before merging the pull request, I plan on cleaning the git history a bit with interactive rebase.
But you want to do it by yourself, here is a simple tutorial: https://www.youtube.com/watch?v=tukOm3Afd8s
Commands r (reword) and f (fixup) are required only. Also pushing must be done with git push -fas the git history will change.
By combining commits the history will be easier to understand: directories and files that are not used in the end will get removed (such as FourPlayerTrinket/), and you can combine commits such as "flake8 fix(?)" or "removed unused import" to the correct commit as if they were done like that in the first place.
But I can do this for you if you are not familiar with these commands.

I am not the most familiar with rebasing using Git and attempted to but ran into some issues. I will let you do it as I do not want to break something.

In the end I simplified the changes into two commits, one for reset pin and other for the capture + readme. Thank you for your help!


Feature Request - Customizable Uptime Action

Hey team! Great work on this app, about to deploy it to our end users and it will be really handy for them to both reach us quicker in their menu bar but also get a good bird's eye view of their system when troubleshooting.
Could we get some options to alter the popup modal with the Uptime widget? I'd love to carry the custom logo there and customize that text if at all possible. Thanks!

Yes, @jordywitteman, thanks for your excellent contribution.
+1 for @salesloftcb's FR.

As lots of admins are requesting a custom app icon, this is one of the top priorities for an upcoming release!

@jordywitteman : the notification is now in the app.  I see it in 2.4.3 and it's in the wiki.
This issue can be closed, yes?


Object children

This is a fairly large change that will need to have documenation updated.

There will be more a bit more cleanup before doc updates are done.


Unquoting polymorphic inductives is broken

If one tries to unquote something like
Polymorphic Record packType := {pk : Type}.

One gets an error like MetaCoqPolymophicTest.502. It's related to the names in the polymorphic universe context. It seems it's not a valid name, but what should it be then?
Full example: https://gist.github.com/annenkov/551f11ee02d5d95e9c2b20fcb67ea4ac

We probably need to use the same trick as here: https://github.com/MetaCoq/metacoq/blob/coq-8.11/test-suite/univ.v#L64, which relaces all names with nAnon.

I am in the process of uncommenting code in the test-suit for universes.

Either that or prefix the level names with u I guess. It must not like numbers as identifiers.

It must not like numbers as identifiers.

Oops, I forgot to post the full error:
Error: Invalid character '.' in identifier "MetaCoqPolymophicTest.155".
So the problem is the dot, which should not appear in the ident. So, yes, we could remove the part until the number nad add the "u" prefix.


JAR build

Hi sir, since I have revised some codes in tls module, how could i build a sub module tls in jar that can be used in maven project?

I will also be really interested to have this code to integrate into a aws lambda.


build(user-identity-mapping): GitHub Action workflow

new GitHub Action worklow to build an image and push it to
https://quay.io/repository/codeready-toolchain/user-identity-mapper
everytime a PR is merged
Note: the OpenShift job is already configured to always pull the image
Signed-off-by: Xavier Coulon<EMAIL_ADDRESS>

and the build/push-to-quay worked: a new image was uploaded to https://quay.io/repository/codeready-toolchain/user-identity-mapper?tab=tags


Invalid line breaks in the top1000 TSV files of the reranking datasets

Describe the bug
A lot of invalid line breaks are contained in the top1000 TSV files of the reranking datasets.
For example, line 234472 in the top1000.dev.tsv does not start with the IDs.
To Reproduce
% sed -n 234471,234472p top1000.dev.tsv
1082445 3492590 what does unlock my device mean iOS: Understanding the SIM PIN.
 You can lock your SIM card so that it can't be used without a Personal Identification Number (PIN). You can use a SIM pin to prevent access to cellular data networks.In order to use cellular data, you must enter the PIN whenever you swap SIM cards or restart your iPhone or iPad (Wi-Fi + Cellular models).hen restoring the device, you will need to unlock the SIM card to complete the restore process. The device and iTunes display the following prompts to notify you: To complete the restore process: 1  Disconnect the device from your computer. 2  Tap Unlock on the device.

+1
Same problem in the triples.train.small.tsv file:
sed -n '43427,43427p' triples.train.small.tsv
When you're on a call or listening to voicemail on your iPhone, you might not be able to hear a person's voice clearly. Or you might hear crackling, static, or generally poor sound quality. Follow the steps below to resolve the issue.

Working on in https://github.com/microsoft/MSMARCO-Passage-Ranking/issues/1

Update this should be fixed later on today.

I've downloaded the train triples small file but it seems that the problem persists:
https://msmarco.blob.core.windows.net/msmarcoranking/triples.train.small.tar.gz
The md5 checksum is still the same from the old version.
36e27d06e66b85957eb774b5504723a6


Hot-Reload can cause crashes with old closures in the heap

The following flutter issues reporting SEGVs

https://github.com/flutter/flutter/issues/50270
https://github.com/flutter/flutter/issues/54424
https://github.com/flutter/flutter/issues/54730

might be caused by this problem.
This example vm/cc test can cause a segfault:
TEST_CASE(IsolateReload_ShapeChangeClosure) {
  const char* kScript = R"(
    class A {
      final x;
      final y;
      const A(this.x, this.y);
    }

    dynamic closure;

    main() {
      closure = () => A(1, 2);
      return "okay";
    }
  )";

 Dart_Handle lib = TestCase::LoadTestScript(kScript, NULL);
  EXPECT_VALID(lib);
  EXPECT_STREQ("okay", SimpleInvokeStr(lib, "main"));

  const char* kReloadScript = R"(
    class A {
      final x;
      const A(this.x);
    }

    dynamic closure;

    main() {
      // Call the old closure, which will try to call A(1, 2).
      closure();

      return "okay";
    }
  )";

  lib = TestCase::ReloadTestScript(kReloadScript);
  EXPECT_VALID(lib);
  EXPECT_STREQ("okay", SimpleInvokeStr(lib, "main"));
}

% ninja -C out/ReleaseX64 runtime_kernel
ninja: Entering directory `out/ReleaseX64'
ninja: no work to do.
%  out/ReleaseX64/run_vm_tests --dfe=$PWD/out/ReleaseX64/gen/kernel-service.dart.snapshot IsolateReload_ShapeChangeClosure
Running test: IsolateReload_ShapeChangeClosure
RELOAD REPORT:
{"type":"ReloadReport","success":true,"details":{"finalLibraryCount":20,"receivedLibraryCount":0,"receivedLibrariesBytes":0,"receivedClassesCount":0,"receivedProceduresCount":0,"savedLibraryCount":19,"loadedLibraryCount":1,"shapeChangeMappings":[]}}

===== CRASH =====
si_signo=Segmentation fault(11), si_code=1, si_addr=0x9
version=2.8.0-edge.22ad590c6829cfdf5ef246ecb7344482ca976dcb (be) (Tue Apr 14 14:09:56 2020 +0000) on "linux_x64"
pid=223413, thread=223413, isolate=isolate(0x560d9ee54900)
isolate_instructions=560d9bd7b1e0, vm_instructions=560d9bd7b1e0
  pc 0x00007f6451100672 fp 0x00007ffc807c0b20 Unknown symbol
  pc 0x00007f6451100596 fp 0x00007ffc807c0b80 Unknown symbol
  pc 0x00007f6451100447 fp 0x00007ffc807c0bb8 Unknown symbol
  pc 0x00007f6451100366 fp 0x00007ffc807c0be8 Unknown symbol
  pc 0x00007f645198174c fp 0x00007ffc807c0c48 Unknown symbol
  pc 0x0000560d9bf74652 fp 0x00007ffc807c0ce0 dart::DartEntry::InvokeCode(dart::Code const&, dart::Array const&, dart::Array const&, dart::Thread*)+0x112
  pc 0x0000560d9bf743b9 fp 0x00007ffc807c0d70 dart::DartEntry::InvokeFunction(dart::Function const&, dart::Array const&, dart::Array const&, unsigned long)+0x2e9
  pc 0x0000560d9c021f49 fp 0x00007ffc807c0de0 dart::Library::Invoke(dart::String const&, dart::Array const&, dart::Array const&, bool, bool) const+0x279
  pc 0x0000560d9c50f107 fp 0x00007ffc807c0ec0 Dart_Invoke+0x5d7
  pc 0x0000560d9bc2f143 fp 0x00007ffc807c0ef0 dart::SimpleInvokeStr(_Dart_Handle*, char const*)+0x23
  pc 0x0000560d9bc40f4f fp 0x00007ffc807c0fb0 dart::Dart_TestIsolateReload_ShapeChangeClosure()+0x27f
  pc 0x0000560d9bbabf3e fp 0x00007ffc807c0fd0 dart::TestCase::Run()+0x1e
  pc 0x0000560d9bbac083 fp 0x00007ffc807c1000 dart::TestCaseBase::RunTest()+0x53
  pc 0x0000560d9bcd2ae7 fp 0x00007ffc807c1020 dart::TestCaseBase::RunAll()+0x27
  pc 0x0000560d9bbac6d1 fp 0x00007ffc807c10b0 out/ReleaseX64/run_vm_tests+0x37f96d1
  pc 0x0000560d9bbac239 fp 0x00007ffc807c10c0 main+0x9
-- End of DumpStackTrace
zsh: abort      out/ReleaseX64/run_vm_tests  IsolateReload_ShapeChangeClosure

Tentatively assigning to @rmacnak-google   due to hot-reload.

This looks like an easier version of TEST_CASE(IsolateReload_PendingStaticCall_DefinedToNSM). This was definitely handled before, but likely broken by kernel.

I don't know how it was handled before, but it could be handled in the flow graph building code: Once hot-reload is done we clear out all code. Then we continue running, which will invoke the closure. That will trigger unoptimized compile of closure. The flow graph builder can then see that the call to the constructor (or any static method) is invalid due to mismatch in signatures (or types) and can call NSM directly.
/cc @alexmarkov @mraleph WDYT?

This looks like an easier version of TEST_CASE(IsolateReload_PendingStaticCall_DefinedToNSM). This was definitely handled before, but likely broken by kernel.

Out of curiosity I did a bit of archeology: IsolateReload_PendingStaticCall_DefinedToNSM had Fail, Crash expectation when hot reload was initially landed 48c8ffa7f3d778fb6ee39c558f7ffae9a134e7ad, then it morphed into Fail, Crash, Timeout, about which I complained. Then it became Skip and SkipSlow(unclear why?). Then @bkonyi triaged these tests as aspirational and reinstated Fail, Crash expectations for them.
So it seems we have never really supported the case when the code is not recompiled from scratch.

The flow graph builder can then see that the call to the constructor (or any static method) is invalid due to mismatch in signatures (or types) and can call NSM directly.

Checking number of parameters is easy (though it would still require changing flow graph builder to stop trusting Kernel, it's a bit of a slippery slope) - but with types things would get complicated, we would essentially need to duplicate some of the front end code (especially because static types of expressions are not serialised into kernel).
How about a different approach: in unoptimized code our static calls are already going through a stub. There is even a code which is supposed to rebind static target on reload, and this code even does some argument descriptor validation, which does not actually do anything if argument descriptors does not match (there is TODO to redirect to NSM).
Can it be that fixing this TODO would actually fix the crash?

@mraleph What about types? If we keep number of positional/named parameters but change the types of parameters, it becomes unsound, because we have old callers not providing the right type the new callee expects.

@mkustermann rebinder has access to the old target - so it can compare the signature and check if new one is a valid override for the old one.

It is not sufficient to check static calls. Old code was compiled with different class hierarchy and different surrounding code, and it may not be valid with hot-reloaded code. Executing old code of a closure is totally unsound and may cause crashes.
For example, consider the following code:
class A {}
class B extends A {}

typedef Func = A Function();

main() {
  Func foo = () => new B();
  // hot-reload here
  A a = foo();
}

In the closure code the instance of class B is returned as a value of type A without any casts.
It could be hot-reloaded to
class A {}
class B {}
...

Executing old code of a closure breaches soundness, although no signatures changed.
Some time ago we discussed this problem in the context of hot-reloading bytecode, and I remeber that @rmacnak-google had a prototype to match closure instances to the new hot-reloaded code if possible, otherwise throw an error if unmatched closure is executed. This would guarantee that we will not attempt to execute invalid old code. @rmacnak-google could you remind what was the result of that experiment?

@mraleph Right, IsolateReload_PendingStaticCall_DefinedToNSM never passed. It is a more difficult version of the test Martin provided, which historically did pass in the VM's frontend.
Executing old code, either through a stored closure or activations still on the stack, or executing additional code, such as loaded through eval or loadUri, can breach soundness because they assume but do not verify the world of types is the same.
The experiment @alexmarkov mentioned is in https://dart-review.googlesource.com/c/sdk/+/111316/ It seemed okay for the few cases I tried in Flutter Gallery, but my intuition is still that this will reject more valid changes that than it will prevent invalid changes, which is par for Dart 2. Soundness will also require disallowing reload except at the event loop boundary, which means fix-and-continue debugging will be impossible.

Following.
We should try to have a fix before Friday if we want to cherrypick this to Beta.

Is this issue fixed now after https://github.com/dart-lang/sdk/commit/847a1275133685f615a0c354292ba3f8e4304999 ? can it be closed ?

Is this issue fixed now after 847a127 ? can it be closed ?

No - there are still potential issues with old closures. They were compiled to kernel under the old static knowledge (e.g. class hierarchy). Even after hot-reload, the re-compilation of old closures in the VM will use the old kernel and therefore assume the old static knowledge is still valid, which can be no longer the case after hot-reload. (Alex provided an example in  https://github.com/dart-lang/sdk/issues/41482#issuecomment-614177695 )
We should find someone to look into this, possibly in collaboration with CFE team.
Ideally the CFE (which knows about the static knowledge) could give the vm a hot-reload diff, containing additional information about closures. The VM could then refuse the reload if there is an old closure in the heap which the CFE told us is no longer valid.

@mkustermann
Please re-evaluate this and do one of the following:

Add it to a milestone if it is still P1
Change priority label and add milestone if no longer P1
Close, if this issue is no longer needed

@johnniwinther is going to take a look at the suggestion made in #41482 and see if it is feasible for CFE to provide that information. Based on that investigation we will decide on how to proceed on this issue.

@jensjoha Can you look into whether we can provide information as suggested in https://github.com/dart-lang/sdk/issues/41482#issuecomment-666995294 ?

Either I don't understand, or it's also a problem for non-closures. E.g. if I have this flutter library:
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class A {
  String foo() {
    print("Hello from A!");
    return "foo!";
  }
}

class B extends A {}

A Function() lookAtMe;
A lookAtMe2;

foo() {
  print("Setting data to B's");
  lookAtMe = () => new B();
  lookAtMe2 = new B();
}

bar() {
  A a = lookAtMe();
  print(a);
  if (a is A) {
    print("Closure returns an A as promised :)");
  } else {
    print("Closure doesn't return an A as promised :(");
  }
  print("");

  print(lookAtMe2);
  if (lookAtMe2 is A) {
    print("Field is an A as promised :)");
  } else {
    print("Field is not an A as promised :(");
  }
  print("");

  try {
    print(a.foo());
  } catch (e) {
    print(" => trying to print a.foo crashed :(");
  }
  try {
    print(lookAtMe2.foo());
  } catch (e) {
    print(" => trying to print lookAtMe2.foo crashed :(");
  }
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;

  void _incrementCounter() {
    if (_counter.isEven) {
      foo();
    } else {
      bar();
    }

    setState(() {
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headline4,
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ),
    );
  }
}

and run it, pressing the + 3 times I get this terminal output:
flutter: Setting data to B's
flutter: Instance of 'B'
flutter: Closure returns an A as promised :)
flutter:
flutter: Instance of 'B'
flutter: Field is an A as promised :)
flutter:
flutter: Hello from A!
flutter: foo!
flutter: Hello from A!
flutter: foo!
flutter: Setting data to B's

(looking at the code, notice that lookAtMe contains a closure claiming to return an A returning a B (which at this point is an A) and a field of claimed type A containing a B (which at this point is an A).
Now apply these changes:
diff --git a/lib/main.dart b/lib/main.dart
index e73638d..8dfb383 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -34,15 +34,15 @@ class A {
   }
 }

-class B extends A {}
+class B /*extends A*/ {}

 A Function() lookAtMe;
 A lookAtMe2;

 foo() {
-  print("Setting data to B's");
-  lookAtMe = () => new B();
-  lookAtMe2 = new B();
+  print("Setting data to A's");
+  lookAtMe = () => new A();
+  lookAtMe2 = new A();
 }

 bar() {

hot reload, press the + 1 time and the terminal now says this:
Performing hot reload...
Reloaded 1 of 526 libraries in 225ms.
flutter: Instance of 'B'
flutter: Closure doesn't return an A as promised :(
flutter:
flutter: Instance of 'B'
flutter: Field is not an A as promised :(
flutter:
flutter:  => trying to print a.foo crashed :(
flutter:  => trying to print lookAtMe2.foo crashed :(

Isn't this the situation - both for closures and fields - that is expressed in https://github.com/dart-lang/sdk/issues/41482#issuecomment-614177695 and thus a problem not centered around closures? (neither of these seem to crash the VM though --- is that the only concern?)
(pressing it twice more gives
flutter: Setting data to A's
flutter: Instance of 'A'
flutter: Closure returns an A as promised :)
flutter:
flutter: Instance of 'A'
flutter: Field is an A as promised :)
flutter:
flutter: Hello from A!
flutter: foo!
flutter: Hello from A!
flutter: foo!

i.e. the old stuff is cleared and the new stuff is set and everything is fine again)

What's the status on this?

After further discussions with @rmacnak-google and @alexmarkov it is clear that fixing this would require some prototyping to evaluate the options available and the fix is going to take longer so moving this issue out of the October milestone and the plan is to complete this in Q4.

Any updates here?  Is this issue still coming up in practice?  (I.e., should this be a P1?)

I don't think this needs to be a P1.

//cc @rmacnak-google @alexmarkov do we still think this is something that we will plan to fix in the near term, should it still be a 'p2' ?


Linux build

Similar to #26, for Linux users. ⚡
cc @Pegase745 @albemala

Here is a build I created for Linux, version 0.1.0 (But from master branch so with all last the last fixes. If you prefer I will build it from tag 0.1.0)
https://drive.google.com/open?id=1VmTgfmg7nWU42lH7fDwK86ogmd6MnOTN

@albemala how did you actually create a build for Linux?
I hope we could find a way to automate it with a script, such as calling: yarn run dist:linux.
Anything different inside package.json?
That would help, thanks! :)

@eveningkid I'm on it. I've got a fork ready to build all the things :)

The only thing I changed is in the PR I created, linked to this ticket.
Otherwise I just run yarn dist:pack
On Wed 28 Mar 2018, 08:14 Michel Nemnom<EMAIL_ADDRESS>wrote:

@eveningkid https://github.com/eveningkid I'm on it. I've got a fork
ready to build all the things :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/eveningkid/reacto/issues/27#issuecomment-376785722,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACOYvNt_6jqyTrlmeBro7P6zzAhUJdQyks5tizhNgaJpZM4S3Fha
.


[FEATURE] Allow role assumable by account outside of the organization

Required Basic Info

Accelerator Version:  1.5.1a

Is your feature request related to a problem? Please describe.
I would like to be able to create a role within the ASEA that is assumable by an account outside of the organization. Right now, the getAccountId method requires that the account is one which is defined in the config.json.
Describe the solution you'd like
I would like to be able to hard code an account ID in the role definition along with a star to specify that any role within that account can assume this role.
{
  "role": "Demo-Role",
  "type": "ignore",
  "policies": ["AdministratorAccess"],
  "boundary-policy": "Default-Boundary-Policy",
  "trust-policy": "security-trust-policy.json",
  "source-account": "<AWS_ACCOUNT_ID>",
  "source-account-role": "*"
}

Describe alternatives you've considered
Or if I could just define this in the trust policy json file. My security-trust-policy.json file would have this in it:
{
    "Version": "2012-10-17",
    "Statement": [
      {
        "Effect": "Allow",
        "Principal": {
          "AWS": "arn:aws:iam::<AWS_ACCOUNT_ID>:root"
        },
        "Action": "sts:AssumeRole"
      }
    ]
  }

Additional context

It's possible I'm missing something with how roles are created and maybe this is possible.

Your alternative option is supported today, see FAQ1.6.15 or the sample snippets file for an example.

specify an account from within the org/ASEA config file (i.e. allow the role to be assumed from within the account that owns it)
put your external account in the trust policy

i.e. the role can be assumed from 2 spots 1) from within the ASEA account it is deployed (only from an all powerful role, like OrgAdminRole in the example), and 2) from your external account which is not part of the ASEA.

Awesome, thank you. This works:
{
  "role": "Demo-Role",
  "type": "ignore",
  "policies": ["AdministratorAccess"],
  "boundary-policy": "Default-Boundary-Policy",
  "trust-policy": "security-trust-policy.json",
  "source-account": "management",
  "source-account-role": "AWSControlTowerExecution"
}

And the security-trust-policy.json is:
{
    "Version": "2012-10-17",
    "Statement": [
        {
        "Effect": "Allow",
        "Principal": {
            "AWS": "arn:aws:iam::845882744474:root"
        },
        "Action": "sts:AssumeRole"
        }
    ]
}


Feature Request: Support for platform-specific dependencies in pyproject.toml

Feature Description
Currently, uv doesn't support specifying platform-specific dependencies directly in the pyproject.toml file. It would be incredibly useful to have the ability to define different dependencies for various platforms (e.g., Linux, macOS, Windows) within the same pyproject.toml file.
Use Case
As a developer working on a project that needs to run on multiple platforms (specifically Linux and macOS with M1 chip), I need to specify different dependencies for each platform. For example, I need to install the CUDA-enabled version of JAX on Linux, but the standard version on macOS.
Proposed Solution
Add support for platform-specific dependency sections in pyproject.toml. This could be implemented similar to how pip handles it with sys_platform markers, or as a new section under [tool.uv]. For example:
[tool.uv.platform-dependencies]
linux = [
    "jax[cuda12_pip]>=0.4.18,<0.5.0"
]
darwin = [
    "jax>=0.4.18,<0.5.0"
]

Or alternatively:
[project]
dependencies = [
    "common-dep1",
    "common-dep2",
    "jax>=0.4.18,<0.5.0; sys_platform == 'darwin'",
    "jax[cuda12_pip]>=0.4.18,<0.5.0; sys_platform == 'linux'"
]

Benefits

Simplified dependency management for cross-platform projects
Reduced need for separate requirements files or complex setup scripts
Improved developer experience when working across different environments

Additional Context
This feature would align uv more closely with other packaging tools and standards in the Python ecosystem, making it easier for developers to transition to using uv in their projects.

[project]
dependencies = [
    "common-dep1",
    "common-dep2",
    "jax>=0.4.18,<0.5.0; sys_platform == 'darwin'",
    "jax[cuda12_pip]>=0.4.18,<0.5.0; sys_platform == 'linux'"
]

Does this not work as-is?

[project]
dependencies = [
    "common-dep1",
    "common-dep2",
    "jax>=0.4.18,<0.5.0; sys_platform == 'darwin'",
    "jax[cuda12_pip]>=0.4.18,<0.5.0; sys_platform == 'linux'"
]

Does this not work as-is?

This works and works really well. Cant believe I couldnt find this on my own. Thanks so much.
Great feature by the way

No worries! Thanks for following up.

Mind if I keep this open? We should add some documentation around this, I've seen it a couple times.

How can I replicate this for pytorch? When installing on darwin, I need to use the regular pypi index, however, when installing on another linux machine, I'd like to explicitly use the https://download.pytorch.org/whl/cu118/ as per the pytorch docs


Fighting majority clients by having a client recommendation / pre-selection

Type
Feature
Description
Currently we have with Geth and Prysm clients above 33% majority, with Geth leading the execution clients by far. This can lead to major issues for the chain when Geth or prysm have a critical bug.
TODOs

[ ] Recommend / Pre-select a execution and consensus client in the LUKSO-CLI
[ ] Add client diversification stats and present it to the user during client selection
[ ] Re-check recommendation and stats for each LUKSO-CLI release

Hey! Thanks for the feedback. This has been answered in Discord though will reference it here as well:

We are actively considering and planning client diversity as a significant milestone for 2024. First, we need to get metrics up - similar to clientdiversity.org... as we can not solve a problem we can't measure. We're also in contact with 3rd-parties like staking services and Dappnode, so they run minority clients or provide new default images.

These steps should already level out the used client majorities, without creating huge problems for private operators. However, articles and awareness regarding this topic are definitely on our list too.

I think we should not wait and fight for something like clientdiversity.org. Turning the tide will only get more difficult because validators will not change their clients in production. Steering the people into the right direction when setting up their clients is much easier!
And we also have statistics. See the screenshot of my consensus client below. We have about 83% prysm validators. This value is quite representative as I'm connected to 84 clients and we only have some hundred nodes.

For execution client the geth share is even higher.

@fhildeb Hey Felix, any updates on your comment about  something like clientdiversity.org? Any idea when it will be available? Could I help somewhere?

There is no update for client diversity analysis, as we have limited resources. It would help us if the community or group of network operators could investigate and analyze data sources- then we could create or fork a frontend like clientdiversity.org and dock on own metrics.
CL Analytics Resources:

Sigma Prime's Blockprint
Miga Labs
Rated.Network

EL Analytics Resources:

Supermajority.info
Ethernodes deprecated)

What needs to be found out:

How is data fetched and if there is open source tooling
What can be considered valid sources (how and why tools show different percentages)
What needs to be operated on our side (boot node, full node with unlimited peer count, etc.)?

Update:
The network team is now investigating node monitoring and testing future forks.
There is another network crawler/analytics tool on the list:

Xatu

Updates will be shared here.


HTML5 full-screen API is not implemented

Hi
I have embedded a couple of videos from youtube and vimeo in my app.
But the fullscreen feature does not work - furthermore if the fullscreen button is clicked the scroll functionality of the app stops working until the page is refreshed..
-Tobias

Please provide your Atom-Shell and OS version.
Tobias Thyrrestrup<EMAIL_ADDRESS>schrieb am Do., 26. Mär. 2015
17:32:

Hi
I have embedded a couple of videos from youtube and vimeo in my app.
But the fullscreen feature does not work - furthermore if the fullscreen
button is clicked the scroll functionality of the page stops working until
the page is refreshed..
-Tobias
—
Reply to this email directly or view it on GitHub
https://github.com/atom/atom-shell/issues/1314.

Atom.app - v0.22.2
OS X - 10.10.2
Here is my sample app:
<!DOCTYPE html>

        <title>Hello World!</title>

Currently we don't have HTML5 full-screen API implemented, so the HTML5 version of YouTube player can not enter fullscreen.

will you do it soon? it interest me too

will you do it soon? it interest me too

No, it is quite low priority.

I ran into this issue as well. Devs- it seems this has been fixed on nwjs, so if it's any help in getting the problem resolved, here's the relevant commit and ticket:
https://github.com/nwjs/nw.js/commit/a3a537bb354f709172e71e7c985d4ac6b8ee1d48
https://github.com/nwjs/nw.js/issues/55
For the time being, I'm guessing I will have to mock the html5 fullscreen API, reimplementing it via calls to the equivalent features in the BrowserWindow API. If anyone else has any other ideas, I'd be interested to know.

Here's my fullscreen monkey patch script if anyone needs it (note: its using ES6):
https://gist.github.com/jameslk/f59714b04d6c199ecd2b
I didin't go through the additional steps of figuring out how to mock trigger the :full-screen pseudo classes and centering on content. My guess is the easiest way to handle that will be to use z-index with a maximum value on the content and set it to 100% width/height.

Hi
I'm curious how to use the fullscreen patch?
Could you please give an example?
-Tobias

@thyrrestrup The monkey patch should fix the HTML5 API without having to do anything else. For example, if requestFullscreen is called on an element, the app will go into fullscreen. This is how to load it:
var fullscreen = new Fullscreen();
fullscreen.implementHtml5FullscreenApi();

@jameslk thanks  I'm unsure how I should require or import the atom-shell-fullscreen.js file and if this is done in the renderer or in the browser? - If this is done in the renderer could this be done through the preload script?

@thyrrestrup You will need to run it through an ES6 to 5 transpiler if you haven't done that already (like this one). Then require it in on the browser side (where things are displayed, like HTML and CSS--not on the side that loads the browser frames).

@jameslk in case you don't wanna go through the transpilation process https://github.com/atom/electron/issues/1328#issuecomment-89810268

@steelbrain Ah nice, thanks for the tip. I'll try that out.


docs: add example for structlog integration

Fixes #24

Thanks again @charlax, this looks great! 🥇


unconsistent NIC/ALIAS_ID

Description
The value of VM/TEMPLATE/NIC/ALIAS_IDS is broken after adding a second NIC alias
To Reproduce
Instantiate VM with single nic with VN_MAD='fw'
- as expected there is no ALIAS_IDS element
Add alias IP from same network

NIC/ALIAS_IDS='0'
NIC_ALIAS/ALIAS_ID=0
and there is CONTEXT/ETH0_ALIAS0
Add second alias from same network
NIC/ALIAS_IDS='1,2'  <-- Should be '0,2'
NIC_ALIAS/ALIAS_ID=0
NIC_ALIAS/ALIAS_ID=2
CONTEXT/ETH0_ALIAS0
CONTEXT/ETH0_ALIAS2

Expected behavior
I believe that NIC/ALIAS_IDS must match NIC_ALIAS/ALIAS_ID
Details

Affected Component: [Network]
Hypervisor: [KVM]
Version: [5.8.2]

Additional context

Progress Status

[ ] Branch created
[ ] Code committed to development branch
[ ] Testing - QA
[ ] Documentation
[ ] Release notes - resolved issues, compatibility, known issues
[ ] Code committed to upstream release/hotfix branches
[ ] Documentation committed to upstream release/hotfix branches

NIC_ALIAS/NAME also becomes inconsistent with NIC_ALIAS/ALIAS_ID
NIC/ALIAS_IDS='5,6,7'
but
NIC_ALIAS/ALIAS_ID=0
NIC_ALIAS/NAME='NIC_4_ALIAS5'   <-- matching ALIAS_IDS index: 5
and
CONTEXT/ETH4_ALIAS0_*

Hello @atodorov-storpool
The ALIAS_IDS is an array containing the NIC_ID of the ALIAS, not the ALIAS_IDS, that's why it's "1,2" (the same for the name)
I have fixed the bug with ALIAS_ID, so now the ALIAS_ID is consecutive 0,1,2,...

PRs to merge in master and 5.8:
code: https://github.com/OpenNebula/one/pull/3359
docs: https://github.com/OpenNebula/docs/pull/633

Confirming that the patch is working :+1:
So on detach in the HOTPLUG_NIC hook I should match the number after NIC_ALIAS/NAME and if it is missing in the NIC's ALIAS_IDS - it is detach operation?
For example /NIC_ALIAS[ATTACH="YES"]/NAME is NIC4_ALIAS6 so if '6' is missing from the list in /NIC[NAME="NIC4"]/ALIAS_IDS (for example we have 5,7) then the operation is detach
if the number is in the ALIAS_IDS the operation is attach.
Right?

Yes, you are right!


unable to import react-scrollbar-js with Webpack

Hi,
I was going to try out this component but I was unable to use it, as Webpack won't import it (throws an error).
ERROR in ./~/react-scrollbar-js/src/js/components/react-scrollbar.js
Module parse failed: C:\Users\differentsmoke\Dropbox\Sensentia\06_documentation\SensentiaCustomerSupport\node_modules\react-scrollbar-js\src\js\components\react-scrollbar.j
s Unexpected token (32:6)

The JSX in react-scrollbar.js looks odd to me, but I can't tell at a glance if there's any mistakes. In any case, I thought I should report.
Cheers,
P.

Hi @pablobarria,
Thank you for giving me an issue, but I'm not sure where the error syntax is. :confused:
Did you install it with NPM or Download Via github?

NPM. On a Windows machi

Hi. I think I know what the problem is. I am no expert in building NPM packages, so I might be wrong:
Your entry point is a JSX file in the src directory. My Webpack configuration ignores node_modules for the babel loader, so it breaks when trying to import it. It should be pointing to build/build,js
However, right now that file is an unresolved git merge conflict. So you should fix that as well.
As I said, I am no expert, so I might be wrong, but this is what I think is the problem.
Cheers,
P.

@pablobarria I think, it shouldn't has any problem. Cause if we pointing the main file to the build.js, it will   import all "Demo Page Js" File. While you just need the react-scrollbar.js only.

im converting an existing project from requirejs to webpack and get this bug as well.  did you find a solution that worked for you @pablobarria ?

Hi @durandal79,
Okey, I'm getting confused now :confused: Why it can be happened?

i think the problem is that babel ignores packages in node_modules folder.  So the jsx code in the scrollbar files isnt transpiled.  I think you need to build it to ES5 if its going to be published in an npm module.

Hi @BosNaufal,  so I’ve created this repo (https://github.com/lc00/react-scrollbar-webpack-error) based on create-react-app repo and when I imported the react-scrollbar library in src/App.js, it’s got the same error
Error in ./~/react-scrollbar-js/src/js/components/react-scrollbar.js
Module parse failed: /Users/summerbreez/sandbox/my-app/node_modules/react-scrollbar-js/src/js/components/react-scrollbar.js Unexpected token (32:6)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected token (32:6)
@ ./src/App.js 20:24-53

Hi, it's bug occurs, because you import sass within js module.
"You may need an appropriate loader to handle this file type. SyntaxError: Unexpected token (32:6)"

Hi @serheyShmyg,
You're right, but how should publish a package with a style? :confused:

Hi! would you like to start using the React-Storybook as a base for this repo?
As a benefits:

cool demo pages
transpilling to ES5 before publishing to NPM
publishing via one line
we could separate srs/dist/example app and pulish to npm only pure dist

I am willing to help to put it all on the storybook rails if you want! :)

@BosNaufal don't import sass into js modules, because a lot of developers separate style and js files. Just mention in docs, that style is required or add inline style to every tag in your component (it's very popular nowadays, like jss or something).

@serheyShmyg

add inline style to every tag in your component

the main idea of this repo is

it's TOTALLY CUSTOMIZABLE

and that's great :)
that's why it's better not to use inline style in this case.
my offer is to have pure CSS (the default one) and ES5 in npm package wich could be overwritten by developers. At the same time in source it's still possible to have any kind of CSS, we just need to transpille it before publishing
@lc00 to use it in the currient version you need to install sass-loader and node-sass. It looks that @BosNaufal has installed them gobaly - that's why he dont need them in dependencies

Hey @serheyShmyg @UsulPro,
So Better have a separate style file?
How can I publish a main style in NPM package, so the developer is easy to import it? :confused:

there are plenty to choose from https://github.com/MicheleBertoli/css-in-js 😄

Are you going to fix it? Because i have the same problem.

Hey Guys~
cc: @theWaR13 @UsulPro @serheyShmyg @pablobarria @durandal79 @lc00
For this issue, you can check my last update https://github.com/BosNaufal/react-scrollbar/commit/98d35117f24290d04004de5675f168e330c81a68 and please close this issue after that.
Just tell me if there's something wrong~

Hey @BosNaufal !
I checked this repo and it still has issues.
I was trying to import it as npm package and import ReactScrollbar from 'react-scrollbar-js'; and I had an error: Uncaught SyntaxError: Unexpected token import
Then I was trying to git clone this repo and npm run dev - I had a bunch of errors ERROR in Cannot find module 'babel-core'
The first is because you publish to npm a non-transpilled version of source code. It could be easily fixed by adding a babel prepublish scripts to package.json. For the last error adding 'babel-core`  to devDependencies will be enough I hope. I've noticed some minor issues in the package as well.
So my suggestions are:

Transpile src by Babel to ES5 before publishing to npm

Publish to npm only dist folder (since we don't need to have an example project and images in the package)

Remove the example project code from src folder to example folder. It's in oder to separate it from src.

Remove react from dependencies to peerDependencies

Then we could check how it works with default css when importing as npm package.
I would like to help with it. Would you mind if I make a PR with this fixes?

Hey @UsulPro, It will be great if I get help from the expert~ :grin: :+1:
You can make a PR for this issue...

Ok, it's done! :sunglasses:
It takes a bit more time and more code changings than I expected first, but finally we have:

Pure ES5 javascript code in NPM package. It's bundled by webpack into one JS file including default css. Importing it from NPM you'll have only this bundle, nothing bloats your project dependencies. (Docs, examples, dev-app is still available in Github repo of course)

So you don't need to care about appropriate css loaders, babel settings and so on. The only peerDependesies is React.

Since default css is bundled into the package we need the way to override it if it's necessary. It's simple - just require new css in your app. (exactly like you did it before, but now you can do it only if it's necessary)

In oder to get access to any scrollbar element I reorder a classnames. Now any element has own unic classname and each state of this element has own modifier. See readme for details. But default appearance is the same as it was before!

Added some functionality for ScrollTo functions. Now it's possible to set value in %% and set negative values to scroll from bottom.

Added two example projects which shows all features of this project

Added ESLint in oder to keep the code clean and comfortable for contributing

I added some sections to readme describing this changes

@BosNaufal, could you take this PR and publish it to NPM? After that we can start to use it!
You can test it before by npm start and via example projects (see in readme).
For publishing you just need to npm publish. You can find all details in Contribution section of readme.


About guppy model

When I go through the first step (the command as guppy_basecaller -i fast5_pass/ -c ~/biosoft/ont-guppy-cpu/data/dna_r10.4.1_e8.2_400bps_sup.cfg --num_callers 10 --cpu_threads_per_caller 5 --save_path fastq --bam_out --moves_out basecall.bam) to get the basecaller.bam file, I wonder how to select guppy's model.  Whether to use the -c parameter to select the model. Thnaks!

Hi, yes -c is how you specify the model.

Hi, the guppy_basecaller is a slow process, is there any way to speed it up. Thanks

Yes, you can use --device "cuda:0,1" to specify Guppy to use two GPUs if you have more than one available, similarly use --device "cuda:0,1,2" or --device "cuda:0,1,2,4" if you want to use 3 or 4 GPUs. You can also try increasing --gpu_runners_per_device depending upon the memory of your GPU. You can also try to increase --num_callers parameter, and optionally --num_alignment_threads parameter if you are using alignment from Guppy.


pwdx: add support for multiple PIDs

This PR adds support for multiple PIDs to match the behavior of the original pwdx.

Thanks :)


Feature Request: Provide Linux build or build instructions.

Could you please provide either a linux build or instructions on how I can build it my self on linux.
Thanks

You will need to install rust and build the library inside of the rust directory. After that, you will need to set the appropriate path for the gdnative library.
If you don't want to deal with that, you can just remove that folder along with the mouse ripple.
You will then need to export for your platform. This should follow the usual Godot export format.
This is not all though. You will need to get a Twitch auth token. Specifically, the one from the OAuth authorization code flow.
The usual flow for this usually requires a web app or a local server to handle the callback but I have a work around.

Register a new Twitch application and set the oauth redirect url to http://localhost . You will also need the client id and client secret
This is the request I used for the initial auth code request. https://id.twitch.tv/oauth2/authorize?client_id={{client_id}}&redirect_uri=http://localhost&response_type=code&scope=bits:read channel:manage:polls channel:manage:predictions channel:manage:redemptions channel:read:polls channel:read:predictions channel:read:redemptions channel:read:subscriptions chat:edit chat:read . You will need to replace the {{client_id}} with your client id from the Twitch dev console.
Take the request and paste it into your browser. You should be brought to a Twitch authorization page. Authorize the application
Your browser should redirect you to a broken page. That's okay. Take the code query parameter value and save that somewhere
You'll then need to follow the rest of the oauth instructions normally. Once you have the oauth token and oauth refresh token (these are different things), add them to the potato-config.json file. The token should auto refresh itself whenever the application starts.
Fill out the rest of the potato-config.json fields.

Thanks... I hoped, I could package it up for my distro... so probably not that good of an idea with all those manual steps.


[WIP] make atomic.value private and provide a getter for it

  public:
    //! The current value of the atomic number
    volatile T value

the client can mistakenly override the value without using the correct setters.
I plan to make it private; If you think it's something we need to do, I will make it private and change all other locations where value is used without protection.

to avoid inadvertent overriding member value directly.
atomic.value = 10;

Besides, you have setters to guard the member and why not have a corresponding getter?

Oh. Perhaps I am missing something -- I don't see where in the diff it actually makes it private (thus doesn't prevent anything as of yet).

Assuming you plan to make value a private member, I think this change is good 👍

As an aside, any reason not to use std::atomic given that we require C++11?
I could even see creating a wrapper around that, if we want to remove the ability to treat atomics like ordinary variables

std::atomic doesn't support float type. So that's why the turi::atomic exists.

I just tested this simple program on my Mac:
    std::atomic<float> x;
    x.store(5.0f);
    std::cout << x.is_lock_free() << std::endl;

and it compiles and outputs 1...
Does the same not hold in the general case, on other platforms?

I believe is architecture-dependent.

too many places have direct access to member value. It's a non-trivial work-load. will drop it here.


Lime option missing in new CLI

I saw there were multiple references to lime in the code. But it's not appearing in the CLI options.
https://github.com/search?q=repo%3Ashadcn%2Fui lime&type=code

I used lime as a control color. It wasn't intended to be used a base color.
However there are a few requests to make all colors available as base. So looking into it...

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.


[$4000]  Emoji reaction - Emoji reaction names are not in Spanish language

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

Action Performed:

Access staging.new.expensify.com
Sign into a valid account in Spanish language
Navigate to a conversation
Enter any data
Click on the emoji reaction
Hover over emoji reaction

Expected Result:
The name of the emoji reactions must be in Spanish language if the selected language is Spanish
Actual Result:
Emoji reaction names are not in Spanish language
Workaround:
Unknown
Platforms:

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

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

https://user-images.githubusercontent.com/93399543/226060491-f45bc11d-d168-4b11-a972-13c6451526df.mp4
Expensify/Expensify Issue URL:
Issue reported by: Applause -Internal Team
Slack conversation:
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01dd45c43c01c59e34
Upwork Job ID:<PHONE_NUMBER>786610688
Last Price Increase: 2023-06-13

Triggered auto assignment to @tjferriss (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

Confirming whether or not this is a duplicate of https://github.com/Expensify/App/issues/16051

Still waiting on a response for the above comment.

@tjferriss these are definitely different issues.
That said, I'm really not sure how to actually fix this problem. It will be a large change either way and we should definitely have an internal discussion about how to do it. This is our file right now and it only supports english. We will probably have to make an entire copy of that file and have it all translated to spanish (or find an existing list) which is a big undertaking. Then when we display things to others we will need to check against all language files instead of just USA.
I think we should make this monthly and have a discussion when we have time

@tjferriss @stitesExpensify this issue was created 2 weeks ago. Are we close to a solution? Let's make sure we're treating this as a top priority. Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!

Pretty sure we're keeping this monthly for now, MelvinBot.

Removing bug label which should shut melvin up

@iwiznia Curious for your take on this issue. I think we have to make this list internationalized before too long. Otherwise more and more parts of the product that aren't internalized will start to creep in.

Oh never even thought about that... I checked slack and was 🤯 that they translated all emojis:

We can fix this if we feel it is important enough, though I am not eager to translate all the emoji names...

Ha well I'm not eager either but I think we have to be committed to internationalizing the app in a consistent way.

Hopefully someone will be able to find an existing list instead of manually doing it ourselves 😅
The other part of this change will be that we need to either:

Always search all emoji lists for matches (currently just spanish and english)
or
Change our search logic to know which list to search based on your selected language

IMO 2 is the way to go here. Either way though, I think that we should make this external. Thoughts?

Job added to Upwork: https://www.upwork.com/jobs/~01dd45c43c01c59e34

Current assignee @tjferriss is eligible for the External assigner, not assigning anyone new.

Triggered auto assignment to Contributor-plus team member for initial proposal review - @0xmiroslav (External)

Current assignee @stitesExpensify is eligible for the External assigner, not assigning anyone new.

Here is the possible solution for this
Define a list of Spanish language emojis: Create a list or dictionary of Spanish language emojis that you want to search for in the text. Each emoji should be assigned a name and its corresponding Unicode code.
Write a regular expression: Use regular expressions to search for the Unicode codes of the Spanish language emojis in the text. A regular expression is a pattern of characters that can match specific strings of text.
Define a function: Write a function that takes a text input and searches for any matches of the regular expression pattern defined in Step 2. The function should return the names of the Spanish language emojis that were found in the text.
Test the function: Test the function on different input texts to ensure that it can correctly identify Spanish language emojis.
I hope this information finds Expensify well to get it started
Thanks,

📣 @gulfam110! 📣
Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.

Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

Contributor details
My Expensify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/freelancers/~01721019a355863460

@MelvinBot when would I hear back for this job?
As submitted the solution

Contributor details
Your Expensify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/freelancers/~01721019a355863460

✅ Contributor details stored successfully. Thank you for contributing to Expensify!

Doubling the bounty

Upwork job price has been updated to $2000

Proposal
Please re-state the problem that we are trying to solve in this issue.
Emoji reaction names are not translated.
What is the root cause of that problem?
We didn't add translation to the emoji-reactions as you can see below.
https://github.com/Expensify/App/blob/ac3f3c4658c359c10a3536c9ab0a64a0060300fe/src/components/Reactions/MiniQuickEmojiReactions.js#L67-L72
https://github.com/Expensify/App/blob/ac3f3c4658c359c10a3536c9ab0a64a0060300fe/src/components/Reactions/QuickEmojiReactions/BaseQuickEmojiReactions.js#L53-L61
What changes do you think we should make in order to solve the problem?
We need to add translations to the emoji-reactions.
First, we need to add translations to en.js and es.js for emoji names: '+1', 'heart', 'joy', and 'fire'.

Second, add the translation to both components by replacing :${emoji.name}: with :${props.translate('emojiReactions.' + emoji.name)}:
Also, we need to add withLocalize to the BaseQuickEmojiReactions component as in
https://github.com/Expensify/App/blob/ac3f3c4658c359c10a3536c9ab0a64a0060300fe/src/components/Reactions/MiniQuickEmojiReactions.js#L103-L110
These updates fix this issue for both context menu and emoji reaction toolbar.

Result
https://user-images.githubusercontent.com/117526965/235646405-ee9e857b-1c82-4fbe-9f84-966a4300415c.mp4

What alternative solutions did you explore? (Optional)
NA

@0xmiroslav Thoughts on the above proposal?

Great question! Yes, I think we should.

@JmillsExpensify since this will be large project, let's increase the bounty more to get proposals.

I don't think this is that large. $2000 seems reasonable and if it is not, the price will go up on its own by following our process.

@romulo114 are you able to update your proposal based on @0xmiroslav suggestion? https://github.com/Expensify/App/issues/16086#issuecomment-1536538352

@romulo114 are you able to update your proposal based on @0xmiroslav suggestion? #16086 (comment)

Yeah. I'm doing some research work.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Emoji tooltips and search doesn't support Spanish.
What is the root cause of that problem?
We don't have any mechanism to support multi-language for emojis.
What changes do you think we should make in order to solve the problem?
Purpose:
We have to support multi-language for emoji names and keywords. For example, :heart: emoji has a name heart, short code :heart:, and keywords heart, red heart. We don't need to translate short codes, but support multi-language for names and keywords.
We can use Spanish codes defined here. As you can see from the pages, each emoji has its detail page and the detail page has keywords, short codes, and name.
In order to do this, we should do:

Extract a collection of emojis in emojis.js from the above URL. Extracted data would look like below or similar:

    {
        short: 'grinning',
        code: '😀',
        name: {
          en: 'grinning face',
          es: 'cara sonriendo',
        },
        keywords: {
          en: [
            'smile',
            'happy',
            'grinning',
            'face',
            'grin',
          ],
          es: [
            'cara',
            'cara sonriendo',
            'sonrisa',
            'feliz',
            'divertido'
          ]
        }
    }

Create 2 versions of EmojiTree in EmojiTrie.js.

Add an extra parameter named lang with default value en to the suggestEmojis function.

function suggestEmojis(text, limit = 5, lang = 'en')

We can use the emoji tree for the specific lang parameter.

Add translations to the emoji reaction as described here. But I strongly suggest to keep the short codes (such as :heart:) in English. I think we should add translations only for names and keywords as other popular applications do. We can add tooltip like red heart (:heart:) or corazón rojo (:heart:) in Spanish.

We might need to fix bugs in other emoji functions in EmojiUtils.js

Result

What alternative solutions did you explore? (Optional)

@0xmiroslav
If that is a must, we can extend our emoji data like below.
    short: { en: 'grinning', es: 'sonriendo' }

And if the current locale is es, we need to add short codes for both es and en to keywords.

Proposal
Updated

Proposal
Please re-state the problem that we are trying to solve in this issue.
Emoji names are not translated into Spanish throughout the app.
What is the root cause of that problem?
We use static English names/keywords for emojis for the emojis from assets/emojis.js file, e.g, left_speech_bubble here is static in name and keywords
https://github.com/Expensify/App/blob/5743b159f7ae44fb792f87d860b161c6b5c7bbf1/assets/emojis.js#L849-L853
What changes do you think we should make in order to solve the problem?
I have tried a few approaches to make this work, but below adding that, I think that it will work without breaking existing reacted emojis
1.
Need to create a new translation key emojis to en.js and es.js files where we are going to add all the name and keywords translation from emojis file and we will use google translation for this,
note: I have translated all the name and keywords in my local branch later I will push for testing if we want to
2.
Next, wherever we are using emoji.name for showing the emoji name, now we will use props.translate(emojis[${emoji.name})
I am adding a few pages that I came across and we will check the app thoroughly in the PR process where we have to use props.translate

https://github.com/Expensify/App/blob/d0634b6aa4ec43067467f968c9a7f024c1acad67/src/components/Reactions/QuickEmojiReactions/BaseQuickEmojiReactions.js#L52-L53

https://github.com/Expensify/App/blob/d0634b6aa4ec43067467f968c9a7f024c1acad67/src/components/Reactions/MiniQuickEmojiReactions.js#L64-L68

https://github.com/Expensify/App/blob/d0634b6aa4ec43067467f968c9a7f024c1acad67/src/components/Reactions/ReactionTooltipContent.js#L58

3. Now Comes to the main part here, which is the searching for emoji based on the language preference
We load all the emojis data in Trie structure here in EmojiTrie
It loads one time only when the app loads, so here we will add the NVP_PREFERRED_LOCALE Onyx key to listen to the change, and whenever we change the locale, we will fetch the All emojis in Trie like below
Onyx.connect({
    key: ONYXKEYS.NVP_PREFERRED_LOCALE,
    callback: (val) => {
        if (_.isEmpty(val)) {
            return;
        }
        emojisTrie = initializeEmojisTrie();
    },
});

here whenever we will add/update data to emojisTrie at that time we will add 1 extra key localizeName along with code, types, and suggestions, localizeName will be used for display the data and searching the emoji
const localizeName = Localize.translateLocal(emojis[${emojis[i].name}]);
https://github.com/Expensify/App/blob/0b6168b7c70522be7ad0bd4afcad06060d45dfbc/src/libs/EmojiTrie.js#L14-L18
Here also will add localizeName in the suggestions
https://github.com/Expensify/App/blob/0b6168b7c70522be7ad0bd4afcad06060d45dfbc/src/libs/EmojiTrie.js#L23-L30
Now, then we will need to change a few things in EmojiUtils search mechanism
here we need to check the nodes[j].metaData.name insted of nodes[j].name
https://github.com/Expensify/App/blob/0b6168b7c70522be7ad0bd4afcad06060d45dfbc/src/libs/EmojiUtils.js#L275
Here we will add localizeName to the matching array so that, at the time of showing searched emoji, we will display localizeName
https://github.com/Expensify/App/blob/0b6168b7c70522be7ad0bd4afcad06060d45dfbc/src/libs/EmojiUtils.js#L279
localizeName: nodes[j].metaData.localizeName
I am attaching a video where I have tried to cover all the common scenarios, please have a look

Result
https://github.com/Expensify/App/assets/35371050/fe670c9e-a17d-409e-a05a-8a49163b2373

What alternative solutions did you explore? (Optional)
none

@s-alves10 I don't see anything from Result section in your proposal. Did you mean to add demo video? I'd like to check your branch with some test Spanish emojis added

This requires some work. If you want to check a demo, sure I'll.

FYI to contributors, "We will use google translate for this" is not an acceptable solution for this problem. We need to use an existing resource that has proper, widely accepted translations. If we use google translate, we will end up with 100 bugs about "this emoji name is not technically correct"

Did not delve much, but here https://github.com/milesj/emojibase is an emoji library that seems to have translated emojis

Proposal
Updated

@0xmiroslav
I attached the demo video

Not overdue, @0xmiroslav is testing a proposal. Any update from your end Miroslav?

Hey @0xmiroslav above proposal selected, or still we are testing?
As I have tested with this emoji database and cross-checked every emoji and we can use this database as it has every emoji translated with suggestion keywords we have in our emojis.js database.
if the above proposal will not work then I can push my local branch for testing
The local testing demo video https://drive.google.com/file/d/1MGouzg_6OOBiEqVQyOi29TzBLnAxCEO1/view?usp=sharing

@0xmiroslav
What issues are there in my solution?

Thanks @jayeshmangwani Other than emoji database, is your solution meaningfully different from @s-alves10?

@0xmiroslav I am unsure how you measure the meaningfully different, but this is my approach.

we have to create a new key in en.js and es.js for emojis and need to use props.translate('emojis') instead emojis from the emojis.js file and emojis array has an extra field value, whenever we have to display emoji name then use value and if have to add emoji to API(reaction add/remove) then need to use the name field
create a new function getEmojiLocalizedName in EmojiUtils for returning emoji value(localized name) based on emoji name
We need to use getEmojiLocalizedName for Every file like EmojiSuggestions, MiniQuickEmojiReactions, BaseQuickEmojiReactions, and ReactionTooltipContent where we are displaying emoji name
For the emojiTrie we need to listen NVP_PREFERRED_LOCALE key and need to return the emojisTrie based on the locale

@0xmiroslav
What standard do we need to meet?
There are 18112 emojis in our original database, and 18111 in my new database. I can diff those and find out which one is missing.
Name is the same as slack as you can see https://emojiterra.com/es/lista/

Not sure keywords should be the same as the old one?
I think we can use the keywords in the new database.

@0xmiroslav
We're now using shortcodes and keywords for search. Names are not used, but those are the real meaning of the emoji: name, short code, keywords.
I think storing the emoji data like above would be good. We might need to use name in the future.
Will you kindly tell me why do you think keywords count for each emoji should be the same? I don't think none of the languages has 1:1 matching each other.

@jayeshmangwani you suggested to put emoji name in en.js and es.js. How will you localize keywords?

@0xmiroslav We can directly use the emojis array from localized files, English and Spanish will have different emojis array, and here value and keywords under the emoji object will be based on language, code and name will be the same for both languages
My Proposal is outdated, and I have changed a few things at my local branch, if other contributor's Proposals will not work, then I will Update My proposal

@jayeshmangwani what is your plan to translate all Spanish emoji names and keywords without any misspelling? We don't guarantee https://github.com/milesj/emojibase or https://emojiterra.com/es/lista/ meet 100% copies to our need.

I have crosschecked every emoji with the emojibase database by comparing the hex code and emojibase has all the emojis translated that we are using in emojis.js on our database

@0xmiroslav @stitesExpensify
There are popular chatting application such as GitHub, Slack, Discord, etc. They all support emojis but only Slack supports emoji translation. As you can see in GitHub and Discord, they support English only. I guess current emojis are similar to GitHub but unfortunately it doesn't support Spanish.
How can we measure success in Emoji translation?
People used to use emojis in chatting application and I think we need to follow their words(names, short codes, keywords).  I thought we should do this comparing with Slack because only Slack supports emoji translation.
The site I've found has Slack translation(short code) and name/keywords translation. And that's why I used this translation library.
Will you share your thoughts regarding the way we measure success in emoji translation and how to implement that.

@s-alves10 I agree that slack is probably the best to compare against. If that website matches then that seems like a good source for names. They don't necessarily need to be 1:1 to our english names, but a full catalog of name and alternative names is definitely required.
With regards to the name, I know that the "real" name is the super long "grinning face with smiling eyes" but I don't think that we need that information since it will never be used.

@stitesExpensify

With regards to the name, I know that the "real" name is the super long "grinning face with smiling eyes" but I don't think that we need that information since it will never be used.

Yes. The real names are not used anywhere now and we can simply remove them. I added them for clarity of the property names.
And I have already extracted all the emojis from the site and they are available here https://github.com/s-alves10/App/blob/fix/issue-16086/assets/new_emojis.js

@stitesExpensify @0xmiroslav what is the next step here? Are we comfortable with @s-alves10 proposal?

I am comfortable with @s-alves10 proposal. The only thing I want to change is Create 2 versions of EmojiTree in EmojiTrie.js.. We should connect to onyx and only create 1 trie based on the current language instead of 2. Otherwise when we eventually add more languages we'll end up using a lot of memory unnecessarily.

I'll create a PR in a day or two

@0xmiroslav
PR is ready for review
I've verified that all emojis have en and es name

@0xmiroslav
Did you get a chance to review the PR?

At one point we intentionally decided to not have a people and body category. It was combined into the smileysAndEmotion section, and should not be re-added

I am here to make a small request: can we make it so that emojis auto complete always in the language you have set AND in english?

I can see slack is doing so.

@iwiznia just to make sure I understand, you're asking that we would always create 2 tries and search them both? So if we have english, spanish, german, russian etc. we would always build the English Trie, and then only one other (the one you have set) and search that too. We would not search all languages every time. Is that right?

@stitesExpensify
Yes. Slack is working that way
Did you get a chance to take a look at https://github.com/Expensify/App/pull/20828#issuecomment-1596329332?

Yes, that's correct. My reasoning is that lots of people (including me) know the emoji names in english, but not in spanish. This is the same that slack does (and I think Whatsapp too)

@iwiznia what does slack do for the "xx reacted with :name:"? Does is display in english or spanish?

I don't know what slack does, but in newDot everything should be shown in the language of your choice.

So even if you typed :smile: it should show :sonrisa:?

IMO yes. The "match also english" is so that people don't need to learn the emoji names in both languages. After posting it, everything should display in your preferred language.

Makes sense to me!

It looks like there is some discussion on the actual PR. @stitesExpensify now that you're back from OOO can you chime in when you get a chance?

Commented on the PR, it's looking great! If anyone (preferably spanish speakers) wants to test it out now's the time!

So here's what I'm thinking:

This is new functionality, so technically it can work however we want (nobody is trying to search with spanish names right now)
People are very busy and our spanish speakers don't have time to test right now (they also don't really have an obligation to)

Let's just test it the best that we can, make sure we like the code, and get this released!

@0xmiroslav and @s-alves10 I've sent an offer to both of you on Upworks for payment: https://www.upwork.com/jobs/~0194e3070a01bf0b21

All set for payments on the 20th

@s-alves10 your payment has been sent.
@0xmiroslav I've held off on your payment and moved the issue to monthly. Please let me know when you're ready for payment.

The payment has been sent via Upworks.

I'm sorry @0xmiroslav, I did not read the Slack thread. I assumed it was ok to proceed with regular payment based on your comment. In the future, I would specifically call out the Upworks account that needs to be paid out in the comment.


Why Don't merge will be ignored in review lists?

In my understanding, WIP does not require coworker reviews. But Don't merge does not mean it. Don't merge finished the coding and needs reviews, but can not be merged from any reasons. How do you think it?
(If you have same thought with me, Other PRs of WIP should be ignored with another way? label or anything... 🤔 )

But Don't merge does not mean it. Don't merge finished the coding and needs reviews, but can not be merged from any reasons. How do you think it?

I believe that's totally depends on a team. It's simply that Don't merge doesn't require review in our team so far.
Then if I propose a feature to ignore PRs by other way (e.g. to specify words to be ignored), would your problem be resolved? 🤔
@review-bot ls author:kachick -ignore-words:"WIP","RFC"

Sounds 😍

Thanks for you opinion, give me some time. 🙇


how to set expiresIn never expire ?

just don't put it at all 🤔

@odarbelaeze is right. If you don't pass expireIn option or exp claim there will not be any exp claim, so the JWT does not have any expiration.

As @odarbelaeze says - don't pass expiresIn to the jwt options and you'll have a token with no expiration.

I was passing an undefined value into the expiresIn property and it was failing. So I assumed it was forcing us to enter a value like 0 or greater. I now make sure that I don't declare the property at all instead of allowing an undefined value to be set. I feel that it should take care of the undefined value internally, in my opinion, to behave like it was unset. Cheers!

bump

it's very simple code below:
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidateAudience = true,
ValidateLifetime = false,
ValidateIssuerSigningKey = true,
ValidIssuer = "gvp.ideacrm.com.br",
ValidAudience = "gvp.ideacrm.com.br",
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["SecurityKey"]))
};
                options.Events = new JwtBearerEvents
                {
                    OnAuthenticationFailed = context =>
                    {
                        Console.WriteLine($"Token inválido.....{context.Exception.Message}");
                        return Task.CompletedTask;
                    },
                    OnTokenValidated = context =>
                    {
                        Console.WriteLine($"Token válido.....{context.SecurityToken}");
                        return Task.CompletedTask;
                    }
                };
            });

Never... is too much time. But, I think that 9999 years is a reasonable meaning of 'never':
const token = jwt().sign({     uuid:data,     apikey   },   '9999 years'   )
produces my verified token:
{   uuid: 'fcaf0b39-0cf6-4814-ba54-634f5061b352',   apikey: 'TAAR8M9-32CMACE-K0V48EV-3Z7ASJB',   iat:<PHONE_NUMBER>,   exp:<PHONE_NUMBER>72 }
Since: 2020-02-08T10:54:32+01:00
Expire: 12019-04-24T05:54:32+02:00
Perhaps in 9999 years your application runs in replicating beings in other galaxy, even other circumstances that we can't even think about now

Never... is too much time. But, I think that 9999 years is a reasonable meaning of 'never':
const token = jwt().sign({ uuid:data, apikey }, '9999 years' )
produces my verified token:
{ uuid: 'fcaf0b39-0cf6-4814-ba54-634f5061b352', apikey: 'TAAR8M9-32CMACE-K0V48EV-3Z7ASJB', iat:<PHONE_NUMBER>, exp:<PHONE_NUMBER>72 }
Since: 2020-02-08T10:54:32+01:00
Expire: 12019-04-24T05:54:32+02:00
Perhaps in 9999 years your application runs in replicating beings in other galaxy, even other circumstances that we can't even think about now

I'm from the future, man, your token just expired, and we can't use the API, the world is in chaos

Never... is too much time. But, I think that 9999 years is a reasonable meaning of 'never':
const token = jwt().sign({ uuid:data, apikey }, '9999 years' )
produces my verified token:
{ uuid: 'fcaf0b39-0cf6-4814-ba54-634f5061b352', apikey: 'TAAR8M9-32CMACE-K0V48EV-3Z7ASJB', iat:<PHONE_NUMBER>, exp:<PHONE_NUMBER>72 }
Since: 2020-02-08T10:54:32+01:00
Expire: 12019-04-24T05:54:32+02:00
Perhaps in 9999 years your application runs in replicating beings in other galaxy, even other circumstances that we can't even think about now

⟟'⋔ ⎎⍀⍜⋔ ⏁⊑⟒ ⎎⎍⏁⎍⍀⟒, ⋔⏃⋏, ⊬⍜⎍⍀ ⏁⍜☍⟒⋏ ⟊⎍⌇⏁ ⟒⌖⌿⟟⍀⟒⎅, ⏃⋏⎅ ⍙⟒ ☊⏃⋏'⏁ ⎍⌇⟒ ⏁⊑⟒ ⏃⌿⟟, ⏁⊑⟒ ⍙⍜⍀⌰⎅ ⟟⌇ ⟟⋏ ☊⊑⏃⍜⌇

Never... is too much time. But, I think that 9999 years is a reasonable meaning of 'never': const token = jwt().sign({ uuid:data, apikey }, '9999 years' ) produces my verified token: { uuid: 'fcaf0b39-0cf6-4814-ba54-634f5061b352', apikey: 'TAAR8M9-32CMACE-K0V48EV-3Z7ASJB', iat:<PHONE_NUMBER>, exp:<PHONE_NUMBER>72 } Since: 2020-02-08T10:54:32+01:00 Expire: 12019-04-24T05:54:32+02:00
Perhaps in 9999 years your application runs in replicating beings in other galaxy, even other circumstances that we can't even think about now
🤣🤣🤣🤣🤣🤣🤣🤣


A question about your resulting Mg/Fe--Fe/H relation

Looking at your tutorials 7-Acessing Chempy paper 1 abundance tracks.ipynb
https://github.com/jan-rybizki/Chempy/blob/master/tutorials/7-Acessing Chempy paper 1 abundance tracks.ipynb
The first plot about the Mg/Fe--Fe/H relation.
How is it possible the [Mg/Fe] is flat (or even increasing) for [Fe/H]~-4 to -2.5?
For this low iron abundance, the age of the galaxy must be very young and the metal enrichment is mostly (if not only) due to CCSN. The more massive star explodes early and gives higher [Mg/Fe] ejecta. Thus the [Mg/Fe] value should reach its peak at the earliest time (lowest [Fe/H]) and only decreases afterward.
Why in your simulation it is the contrary? Could you help me understand? Thanks!

@juzikong, I think the trend you're seeing in the [Mg/Fe]-[Fe/H] plane for [Fe/H] < -2.5 is largely a consequence of the simulations time resolution (100 Myr/step). The evolution of the system from [Fe/H] = -4 to -2.5 is very rapid and corresponds to only ~2-3 model steps. In the following plot of [Mg/Fe] vs. time in the tutorial, the [Mg/Fe] increases slightly over these first few steps as well to reach its peak pretty quickly after less than a Gyr. Without looking into it further, I'm not entirely sure why the peak isn't at the very first time step. And I don't know if this is a physical prediction of the model or an artifact of their only being a few steps after initializing the model. Perhaps someone else can comment to that effect.
If you run the same simulation with 10, 50, and 100 Myr time steps, you'll notice that they may disagree at very low metallicities—though they should agree at late times (see plot in cell 15 of tutorial #5). In general, if you want to use Chempy to fit abundances at very low metallicities, I would recommend increasing the time resolution to 50 or even 10 Myr.
I hope that helps!

Thanks a lot for your reply!
Exactly. I also thought about the time step influence and as you mentioned. The plot showing the effect of different time steps is nice and reasonable but it won't explain why the peak is not at the very first time step.
I see some other simulations can have a flat relation for low [Fe/H] range IF assuming instantaneous recycling (all star>1 M_sun die instantly after formation) but never a positive slope.
If you don't assume instantaneous recycling, then each new time step should have a lower [Mg/Fe] according to the first principle. In this case, even a flat relation (as in cell 15 of tutorial #5) would be wrong.
I am not asking you to go through the code but maybe add some warning and explanations at least. As the plot can be misleading for people that are not familiar with the issue.
Best regards,
Yan

I just realized one possibility. The stellar yield table is often not monotonic and has large scatter. If you didn't smooth it with some spin line fit. It could cause the issue here. This can be easily checked.
If it is indeed the problem, I won't say not smoothing is wrong. But in general, the yield table is very sparse, and not smoothing it leads to unphysical random errors. I personally prefer a smoothed yield table in my simulation.

Hey,
sry for not replying so long.  Still not sure if they are on now...
So I think Nathan is right that the sparse time steps in the beginning might be the problem here.
When starting Chempy I had thin disk chemical evolution in mind and did not look into very early times.
Nathan is now looking into dwarf galaxies and is solving few of those issues.
Chempy is linearly interpolating the yield tables in masses and if I recall correctly in log metallicity.
The rise is likely due to the CC-SN feedback of Mg/Fe being metallicity dependent, but could also be due to initialisation problems. In order to circumvent this I would propose to use a finer time grid and discard the first timestep.
Hope that helps.
Cheers,
Jan

Dear all,
Thanks for the update. It is certainly a complicated task to check code
behavior and initialization problems. I have my own chemical evolution code
and the initialization is the part I made the most mistakes. And depending
on my experience, I do agree with you that after a few more time steps, the
initialization becomes less important and the results tend to converge to
the correct one as long as the stellar yield table is correct. This is
generally due to the feedback effect of the stellar yields.
Dear Jan,
I have one question about your reply though.

The rise is likely due to the CC-SN feedback of Mg/Fe being metallicity
dependent,

I am not sure this is a possible reason because lower metallicity stars
have higher [Mg/Fe] as far as I know it. Thus it is always the case that
[Mg/Fe] should only decrease.
Best regards,
Yan Zhiqiang
On Wed, 28 Aug 2019 at 10:06, Jan Rybizki<EMAIL_ADDRESS>wrote:

Hey,
sry for not replying so long.  Still not
sure if they are on now...
So I think Nathan is right that the sparse time steps in the beginning
might be the problem here.
When starting Chempy I had thin disk chemical evolution in mind and did
not look into very early times.
Nathan is now looking into dwarf galaxies and is solving few of those
issues.
Chempy is linearly interpolating the yield tables in masses and if I
recall correctly in log metallicity.
The rise is likely due to the CC-SN feedback of Mg/Fe being metallicity
dependent, but could also be due to initialisation problems. In order to
circumvent this I would propose to use a finer time grid and discard the
first timestep.
Hope that helps.
Cheers,
Jan
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jan-rybizki/Chempy/issues/12?email_source=notifications&email_token=AE5F3MX5XMDVEZ3RKOQRA4TQGYWW7A5CNFSM4HYKWLB2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5KIERY#issuecomment-525632071,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE5F3MUPW7AXPRJ4D7JXIFTQGYWW7ANCNFSM4HYKWLBQ
.

Dear Yan,
if you look at https://github.com/jan-rybizki/Chempy/blob/master/tutorials/2-Nucleosynthetic_yields.ipynb output 16 and 17 the [Mg/Fe] yield of CC-SN yields are shown for Nomoto 2013 and Chieffi+ 2004 respectively.
So for Nomoto the lowest metallicity is only about -1,2 dex, therefore the CC-SN yield will be flat below.
For Chieffi+ 2004 seems to have a peak at -2 dex. Therefore rising trends before -2 could be due to the CC-SN yields. I am not saying this behaviour is physically right. Just that the yield table provides this kind of data.
Cheers,
Jan

Indeed. Interesting.
I guess it can be easily tested whether the low Z part of the table is the
cause of an increasing [Mg/Fe].
Also, it would be important to know if there is a physical reason behind
this yield behaviour.
Best regards,
Yan
On Thu, 29 Aug 2019 at 09:37, Jan Rybizki<EMAIL_ADDRESS>wrote:

Dear Yan,
if you look at
https://github.com/jan-rybizki/Chempy/blob/master/tutorials/2-Nucleosynthetic_yields.ipynb
output 16 and 17 the [Mg/Fe] yield of CC-SN yields are shown for Nomoto
2013 and Chieffi+ 2004 respectively.
So for Nomoto the lowest metallicity is only about -1,2 dex, therefore the
CC-SN yield will be flat below.
For Chieffi+ 2004 seems to have a peak at -2 dex. Therefore rising trends
before -2 could be due to the CC-SN yields. I am not saying this behaviour
is physically right. Just that the yield table provides this kind of data.
Cheers,
Jan
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jan-rybizki/Chempy/issues/12?email_source=notifications&email_token=AE5F3MWVYJDDQ5WX24EYXG3QG54CRA5CNFSM4HYKWLB2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5NR5KI#issuecomment-526065321,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE5F3MVUQV3LSJ3F6ADAWZLQG54CRANCNFSM4HYKWLBQ
.

BTW, if you have publications with these plots (output 16 and 17 the [Mg/Fe] yield of CC-SN yields) I can cite it right now.

Dear Yan,
you can just take the jupyter notebook and let this plot run with a higher time-resolution or play with other parameters.
As for the physical reason you would have to ask people who create those yield tables.
I would be fine if you point to the github tutorial. But in principle its just a visualisation of the tables Nomoto and Chieffi+ provided.
The closest visualisation to that in a publication are fig 1 and 2 of https://arxiv.org/abs/1906.05297
but they are not normalised to Fe.
Cheers,
Jan


feat: support webdav

feat:config webDav and milton in configuration;
feat:add event handler in WebDavController;
feat:check auth by admin in systemConfig;
feat:download webDav file by redirect to site DirectLink;

is great.
thanks very much.


Bump Dependencies #4070766865

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/4070766865

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


[CC-6351] smartling SDK-API required version in composer update

et version php requise descendue à 5.5

Code review OK :) Dependencies checked: we can lower the required PHP version to 5.5. Ready for merge!


[Question]  loss 不能下降

Question
When I fine-tune with Lora, the loss will drop to about 0.8 in the first 20k steps, and then increase to 6.2 over time, and then keep oscillating here. May I ask why this problem occurs? How to solve it? Translate this passage into English

Hi friend, I guess you may consider switching a lower learning rate when conducting your SFT.

Same question

Same problem too!

I change learning rate from 2e-4 to 2e-5. It is really work!


Drop cap indent stays switched on for subsequent paragraphs

I've tried to pare it down to a minimal example. Sometimes, after a few paragraphs, it starts indenting as if there's a drop cap even though there's no chapter number. Most of the time I can reset it by using "\end{scripture} \begin{scripture}" or putting the subsection headings outside the environment, but then I need extra code to soak up the extra vertical space.
I typeset a book of gospels last year without this being much of an issue.
It's puzzling.
test.pdf
\documentclass{article}
\usepackage{scripture}

\begin{document}
\begin{scripture}

\subsection{Jesus Heals a Paralytic}

\ch{2}And when he returned to Caperna-um after some days, it was reported that he was at home.

\subsection{Jesus Calls Levi}

\vs{13}He went out again beside the sea; and all the crowd gathered about him, and he taught them.
 the son of Alphaeus sitting at the tax office, and he said to him, ``Follow me.'' And he rose and followed him.

\vs{15}And as he sat at table in his house, many tax collectors and sinners were sitting with Jesus and his disciples; for there were many who followed him.
\vs{17}And when Jesus heard it, he said to them, ``Those who are well have no need of a physician, but those who are sick; I came not to call the righteous, but sinners.''

\subsection{The Question about Fasting}

\vs{19}And Jesus said to them, ``Can the wedding guests fast while the bridegroom is with them? As long as they have the bridegroom with them, they cannot fast.
\vs{21}No one sews a piece of unshrunk cloth on an old garment; if he does, the patch tears away from it, the new from the old, and a worse tear is made.

\end{scripture}

\end{document}

Oooo.
I admit the scripture environment is very picky about what you put inside it. Everything is a LaTeX list and LaTeX lists fiddle with \par in odd ways. Combine that with the scripture environment trying to manage \parshape across paragraphs and I'm not surprised that problems arise.
I'll see if I can track down exactly what is going on, but in the mean time for the case where your section headings are not in an inner environment (e.g., poetry, hanging, etc.) try adding this to your preamble:
\makeatletter
\AddToHook{cmd/subsection/before}{%
  \parshape 1 \@totalleftmargin \linewidth}
\makeatother

Trying to put section headings within inner environments is probably a bad idea.
Using \section and friends for headings is a reasonable feature to try and make work, so I'll see if I can make things more robust.

I typeset a book of gospels last year without this being much of an issue. It's puzzling.

I changed how the main scripture environment works. It used to not use a LaTeX list, but now it does (there were too many weird problems with spacing). It would say that if you tried to recompile your document with the current version, it would fail.

Thank you!


Add option to configure the default minos.networks.DynamicHandler timeout through minos.common.MinosConfig

Closing this issue as it is moved to https://github.com/minos-framework/minos-python/issues/72


Add Fuzz Tests

Codecov Report

Merging #13 (f7f26a0) into master (13a7b02) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #13   +/-   ##
=======================================
  Coverage   72.93%   72.93%
=======================================
  Files          16       16
  Lines        1027     1027
=======================================
  Hits          749      749
  Misses        278      278

Continue to review full report at Codecov.

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


fix: fix issues with commands and invalid keyword values

Summary by CodeRabbit

Chores

Updated workflow for Unity SDK version references to streamline processes.
Standardized commit message formats for package updates.
Adjusted pull request creation steps to include version numbers in titles.

:tada: This PR is included in version 1.6.14 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[libpq] update to 16.1

Fixes https://github.com/microsoft/vcpkg/issues/35398

[X] Changes comply with the maintainer guide
[X] SHA512s are updated for each updated download
[ ] The "supports" clause reflects platforms that may be fixed by this new version
[ ] Any fixed CI baseline entries are removed from that file.
[ ] Any patches that are no longer applied are deleted from the port's directory.
[X] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[X] Only one version is added to each modified port's versions file.

Usage test pass with following triplets:
x64-windows
x64-windows-static

Some patches should be kept unchanged:
ports/libpq/unix/no-server-tools.patch
ports/libpq/unix/python.patch

In another port, I could pass cross_compiling=yes as an option. If that would work here, we could drop ports/libpq/unix/fix-configure.patch which otherwise needs to be changed with every new version.

Ok, I will try locally if it works, if so I will delete unnecessary patches.

cross_compiling=yes must be tested with a dynamic triplet on a native cpu, e.g. x64-osx-dynamic on x64-osx.

Obsolete.

Duplicate of https://github.com/microsoft/vcpkg/pull/40110.


Rename POST /instruction to POST /transaction in the API

May be resolved here: https://github.com/hyperledger/iroha/pull/1316


I have a few typescript errors, how can I turn typescript checker off when doing a build.prod?

I have a few typescript errors, how can I turn typescript checker off when doing a build.prod?

This is considered bad practice but you can take a look at --isolatedModules.

I found out why the build.prod didn't work, its because I have typescript errors.
I will fix these eventually but is there an easy way e.g. in gulp to ignore typescript checking/linter on build.prod?

Thank you. "isolatedModules": true, worked. Yeah this will only be temporay


Update include statements to use new peps_util.jl filename

@kshyatt Can you please confirm these are correct? Thanks!


fix black issues

the issues were coming from black 23.1.0 - adjusted setup to include that.

@remi - this should fix the black issues.

@Remi-Gau - ping to merge this.


[BREAKING] Remove support for legacy scripts

removed support for long time deprecated and disabled scripting system

I guess we can remove pc.script.attribute aswell?
I'm not 100% certain, but I never used it and quick code search only seems to be related to legacy system:
https://github.com/search?q="pc.script.attribute("&type=code

I guess we can remove pc.script.attribute aswell?

yep, gone now, thanks

Tested against a project with the legacy scripts, and we get no crashes from it, the behaviour is the same as before removing the component.


Missing tests for propagate_linked_params

Apparently we don't have any unit tests for propagate_linked_params, would be good to add them.

@mstechly @dexter2206 I had a question about the correct behavior of propagate_linked_params. Can you confirm that the effects seen are correct. Below are the comparisons of values before and after calling propagate_linked_params:
uncompiled_routine = after qref_to_bartiq
precompiled_routine = after propagate_linked_params:


Snippet chooser panel broken

Snippet chooser panel broken in latest master. commit from a couple of weeks ago works.
.
Sorry I can't give many details at the moment. I'll investigate this further and replace this description later

git bisect shows that the offending commit is d31e4cd032d38f6c816cf3c56115297c3c66d234

This is not specific to SnippetChooserPanel - it occurs on any initially-empty chooser for a non-nullable field. It seems that get_related_model returns the model that the foreign key is on, rather than the one the foreign key is pointing to, which means the related_model.DoesNotExist exception at https://github.com/torchbox/wagtail/commit/d31e4cd032d38f6c816cf3c56115297c3c66d234#diff-3eb06cf22d9b9742ad0aa1a58c9d76f5R533 is not caught.


Enable the sparse schedule

https://github.com/dmlc/tvm/pull/3566 added the sparse operators. Need to include the sparse schedule in init.py so that it can be picked up.
@ajtulloch , do you think whether it makes sense? Thanks.

Looks good, thanks!

Thanks @sf-wind @ajtulloch


meaning of commands in python3

Hai, im Galuh Boy
and again, im asking about the code.
when you have to running the python code, you use the command in ubuntu (for server):
python3 server.py 10 100
and when you use comaand again in ubuntu (for party/client), you use:
python3 client.py 1 10 16 1 3
what the meaning of 10 and 100 in server command?
and also what the menaing of 1, 10, 16, 1, and 3 in party command?
thanks
regards,
Galuh Boy Hertantyo

Hey Galuh,
For server parameters, we have the number of parties and number of epochs.
For client parameters, these include:
Username: a unique identifier for each client.
Number of parties, batch size, and number of local updates: these are technical parameters related to the federated algorithm.
Number of scenarios to examine: specifies the scenarios to be tested or analyzed.

thanks for help,
it was really helping me for my project . thanks.
regards
galuh boy h


 I'd like to be able to tell the player to preload the beginning fragment(s) of the streams of the next few videos so that when I scroll to them, they play instantly.
I can't seem to get this to work with any of the file config params. I saw that support for preload was recently removed but that seems unrelated. Am I missing something here? Thanks!

@EmptyCrown Hii there

is there any solution by now? I currently have the same issue


pair sample query

this query will expose all unique pools where the order of token0 and token1 is determined based on token address ascending.
important to note, the output of this query will not indicate the base and quote tokens correctly as they do not represent actual strategies with their base and quote asset indication.
{
  pairs (first:3)
  { id
  }
}

@pingustar do we still need this?


Is there a way or model to remove the song(including lyrics) but keep speech?

Is there a way or model to remove the song(including lyrics) but keep speech?

No. If this outcome is important to you, the best option is to layer the extracted instrumental and acapella tracks in a DAW and remove the vocal sections while leaving the speech in.


How to implement Dark mode?

Thanks for this template!
Shadcn's dark mode works well inside apps/ workspace.
But how can we add dark mode inside the packages/ui?
Doc says to wrap ThemeProvider in layout.

Oh, I was able to add dark mode by wrapping ThemeProvider in respective apps/ layouts. 😄
Shall I open PR?

Hi @kernelsoe, thanks for wanting to contribute but I think it would be better without ThemeProvider by default. I feel it's best to let anyone install it later if they need to.

@dan5py Thanks for the feedback! I'll close this. :)


Can't get the plugin to work.

I installed on a clean pi4 under pi account
desk is paired
Idasen-controller is working
installed the plugin
configured as given.
Nothing is happening.

Hello,
I found solution in closed issue. I had to install Idasen-controller under homebridge account.
It works!
thx

Thank you for the update! :)
I'll make a change in the readme since this seems to be a common issue.