Extend "Complexity Profiling" feature to include APM apps

Summary
Currently, the Complexity Profiling feature only works with fully instrumented web apps:  Browser, APM, and Infra.  For these apps, it is quite useful as the user can create a workload of the app and its underlying hosts with the click of a button, never having to leave the Nimbus UI.
Please extend this functionality to applications only instrumented with APM + Infra.
Desired Behaviour
The Complexity Profiling page will show a listing of all APM applications that also have infrastructure agents installed on their underlying hosts.
Possible Solution
Adjust the default algorithm to exclude Browser dependencies or allow for the configuration of the algorithm so that the user can choose to exclude them.
Additional context
This feature would allow APM users to be able to create workloads without ever having to leave the Nimbus UI.

I've been able to create workloads from the complexity profiler with just APM and Infra dependencies. The feature also includes associated synthetics, mobile, and browser entities when available but isn't a strict dependency.
Please provide more details, screenshots, or a reference example in an accessible environment.

Hi Gil,
I deployed 5 sample apps to the demobot account, and only those instrumented with Browser appear under Complexity Profiling:

Based on your comments, I deployed the latest Nimbus to Demotron_CAS, and indeed, it doesn't appear Browser is the common denominator, but some applications still aren't present ("Box" being one example):

Since Kav based the simple complexity algorithm on this:  https://github.com/iamfuzz/app-complexity-assessement/blob/master/README.md
I dug a little further to see if it was perhaps apps lacking database transactions that were being excluded, but that doesn't appear to be it either.  I'm now not sure why some applications are present and others are not.

Digging a bit further, the app GUIDs appear to be retrieved with the following graphql query:
{
actor {
account(id: 2246998) {
nrql(query: "from Relationship select uniques(sourceEntityGuid) where sourceEntityType='APPLICATION'") {
results
}
}
}
}
For some reason, that query does not return all applications.

might have something to do with those apps not having throughput in the period where the request is being made. It might make more sense to look at how the relationship service is expressed in graphql rather than nrql when creating those dependencies.
the nrql is a simpler approach would require the recursion multiple entity lookups and subsequent relationship lookups. But will probably be more robust and complete.

Good idea, this appears to be the way to do it:
{
  actor {
    entitySearch(query: "type IN ('APPLICATION')") {
      results {
        entities {
          guid
        }
        nextCursor
      }
    }
  }
}

This has the added benefit of being cross-account as well but will require some pagination work and filtering (this will return two entries for the same app if the app is instrumented with both APM and Browser)

Yes that is a piece of a graph query.
Switching the mechanism has broader implications  for how the component is built. I am going to close this issue and park this pending a larger design review.


Automatic RP tile for the "C" key when moving

Hello,
what do you think about the following modification:
When moving around, the (second) last used tile, before one stepped onto the combat tile, is automatically set as RP for the "C" key, if no RP within the visible range is set manually?
A real use case: an enemy pilot got stunned. We went there and killed him. His alliance mate jumped at the same tile to help him out, whom I've been fighting then as well, since I was in a rush and didn't set RP manually before I jumped that tile, I could't retreat using "C" key and died. Main problem was me getting confused with the key and being out of practice, I think, but such a modification could still help to save lifes.
Theoretically it could be done for a much longer distance, so that one can go the whole path back by pressing "C" key to be sure the way back is safe, because one just made that way in the other direction.

I don't think this is easy to implement correctly, and I don't have that much time for this, sadly.


Use shared logger for krisp hook

This ensures it respects your log levels set on the SDK/components. I also clarified a message in case it helps for people who don't know what any of this stuff is 🤷🏻

not sure why changeset bot didn't update the status but i added a changeset a few days ago


Namespaces should be in separate files

https://github.com/BoolNordicAB/sharepoint-utilities/blob/master/src/sputils.list.js#L57

Fixed the issue


[release/1.2.z][TC-1668] - Dashboard - Status panel - back end - Correct the issue of incorrect timestamp sorting

Backport of https://github.com/trustification/trustification/pull/1747

Merging this PR as it is a backport of a PR reviewed and tested already


Android: Seems like if GPS is switched off, no location callbacks occur

Recently, I have been noticing that sometimes no locations are being recorded for Activity Provider even if stopOnStillActivity is false.
I investigated and found that it may be due to person switching off GPS and internet. Can you shed some light on this @mauron85 ? Shouldn't location updates be received from cell tower?

I guess if GPS and wifi are not available there would be no callbacks if cell tower location is not good enough. In that case, just like backgroundGeolocation.watchLocationMode(success, fail) plugin would also have to include backgroundGeolocation.watchGPSMode(success, fail)

In vanilla android you cannot switch GPS separately. Only locations can disabled/enabled.

I don't think so, do check:
http://stackoverflow.com/questions/15778807/how-to-detect-when-user-turn-on-off-gps-state
http://stackoverflow.com/questions/18259039/gpsstatus-listener-works-only-if-gps-is-on
http://stackoverflow.com/questions/20611824/event-for-gps-on-off-state-change

Notice: this issue has been closed because it has been reported for branch 2.x or later. It could be already fixed in v3 or is not relevant anymore. You may reopen this issue if it has been closed in error.


moveFailed fails on share.deleteFile()

In the case of using a camel route that includes move and moveFailed in the URI the default behaviour is to first delete a file of the same name if present in the target folder.
org.apache.camel.component.file.strategy.GenericFileProcessStrategySupport
protected GenericFile<T> renameFile(GenericFileOperations<T> operations, GenericFile<T> from, GenericFile<T> to) throws IOException {
        // deleting any existing files before renaming
        try {
            operations.deleteFile(to.getAbsoluteFilePath());
        } catch (GenericFileOperationFailedException e) {
            // ignore the file does not exists
        }
        //Some other unrelated stuff....
}

The provided SmbOperations then is charged with handling the deletion of the file. When it comes to the SmbShare deleteFile(String path) method it fails with STATUS_OBJECT_NAME_NOT_FOUND resulting in an SMBApiException. This is not caught and interrupts the running task. After a lot of debugging I found out that this is intended to delete a file in the provided moveFailed folder with the same name as the file to be moved.
In the case of the File component that this library is replacing a check is executed before trying to delete the file. This seems logical to me as the file is to be moved and this prevents naming conflicts but there might be nothing there.
org.apache.camel.util.FileUtil
public static boolean deleteFile(File file) {
        // do not try to delete non existing files
        if (!file.exists()) {
            return false;
        }
        //Some other stuff....
}

As far as I can see this check is not happening when using this library resulting in the STATUS_OBJECT_NAME_NOT_FOUND error due to the file not actually existing in that location (yet).
My suggestion would be to use the fileExists method already provided on the SmbShare class as a check before calling share.rm(path). Catching the SMBApiException seems too generic to me as it might relate to other issues with the share/client. What do you think? I'm currently implementing this fix for an application we use. I have to say that your library works great otherwise. Very easy to use. :smile:

I made the change mentioned above and it works flawlessly now. I can make a pull request if you'd like?

@MarkBoers92 - thanks for the detailed description, please submit a PR by all means!
To be honest I haven't looked at the moveFailed option, a good catch - I'll try to cover it with a
couple of integration tests to cover the happy and the exception path.
It also makes more sense to handle the exists check in deleteFile operation, true.


Update Kotlin Native targets

According to the recently updated Kotlin Native support, these are the targets we should support as a library.

@JavierSegoviaCordoba @nomisRev should I create a new tag to start publication in Maven Central?

@serras I released 0.12.0-rc1. So we can test it on a PR, I’ll show you tomorrow how we trigger releases. (It works through triggering the generate-tag workflow with the desired parameters).
Thank you this PR 🙏 Great work 🥳


Implement RemoteIssue to WorkItem Mapping Model

Currently the Issue struct looks like:
type Issue struct {
	Title       string
	Description string
}

This looks like a semi-complete Issue definition,
This should be be modified to accommodate:
https://github.com/DhritiShikhar/ALM_issues/blob/master/remoteissue_mapping_model.adoc

@sbose78 I'd say it is best to contact @DhritiShikhar. But the attributes look okay so far. Since we don't have the concept of a user yet it might be hard to model fields like Assignee, Reporter, and Collaborator just yet.

Thanks @kwk .
We would need to get some closure on which fields to map as part of this sprint. @DhritiShikhar , do you have info on that?

@sbose78 that was a random model. Currently, we only want issue title and description.

Awesome. Thanks @DhritiShikhar for confirming.

we want state of issue also -> like open, closed, in-progress

Thanks @DhritiShikhar .

Duplicate of https://github.com/almighty/almighty-core/issues/131


Please inline configuration instead of breaking it out into small, separate files

Please provide us with the following information:

This issue is for a: (mark with an x)
- [ ] bug report -> please search issues before submitting
- [ ] question
- [ ] feature request
- [x] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Any log messages given by the failure

Expected/desired behavior
Breaking configuration out into separate files makes the code harder to read, because file navigation is required. There isn't much configuration data so decomposing it into smaller files hurts readability instead of improving it.
For example authConfig.js, apiConfig.js, and policies.js could be all be wrapped up into one file.
Browser and version?

Versions

Mention any other details that might be useful

Thanks! We'll be in touch soon.

@JayDouglass apologies for late response. We have devised the folder structure this way initially as a suggestion since these configuration files can expand significantly in actual usage. We'll take your feedback into consideration when updating the sample next time. Thanks!

Closing this for now, as no action to take at the moment.


Transfer ownership of extensions

The very important, basic, and yet most fundamental feature of transferring (ownership) extensions between users is missing for ages, and request you expedite this with a concrete plan and action.
Ref - Edge-Extensions/discussions/15
I have been chasing this since 2019, with countless emails, calls, follow-ups, etc., and always getting fooled by your team with false promises.  Every possible extension and app store has had this basic feature from Day 1 since 2010 onwards, and I do not understand why your team is either deliberately ignoring it or miserably failing to understand this feature, and yet taking absolutely no action.
We are now in 2023 and 13+ years passed already, I strongly urge your team to put an end to this!

@nagachaitanyalokam @sonakshimore
Can you please let your entire extension team proactively respond to queries, emails, and issues? I seriously do not see their commitment and responsibility to act on the real issues. I dealt with more than 15 folks from your Extension team, and everybody stopped to respond to emails, are their emails working or dead?
Most importantly, now I need your help to expedite this issue!

Hi @drveresh, we understand the need for the feature. Our team is working on it, as mentioned earlier over call & email by our team members to you. Highly apprieciate your patience with us. We shall be soon updating your more on it.

@sivsouvamMSFT @sonakshimore  The words "understand, working, earlier, soon, patience.." are really losing their meaning, intent, and deosn't seem to make no difference to your team because none of them lead or concluding to anything at all.  I have been hearing the same words and statements since 2019, and what makes you think they make a difference now?
The W3 Consortium team members rebuilding web technologies and adding next generation of features every single day!  But, your team is going no where on this rudimentary feature since years, in spite of reusing the copy of chromium project.
In sum, can you please share the realistic and concrete updates and timeline?

Hey @drveresh, I wanted to let you know that we have been giving thoughtful consideration to the request for this feature. Our team is actively working on it and I would be happy to keep you updated on the progress as we move forward. I am confident that by June 2023, you will start to see some meaningful developments and I look forward to the opportunity to share these with you.

+1 on this. I have no way to transfer an extension from one account to the other. Edge support told me to simply republish the extension on the new account, which I tried doing, and was rejected because a similar extension was already on the Edge store. 🙃

Hey @f-eli-pe, could you please email us at<EMAIL_ADDRESS>with your Seller ID & extension CRX-ID, stating our conversation here? I will look into it & come up with the best solution for you.

Hey @f-eli-pe, could you please email us at<EMAIL_ADDRESS>with your Seller ID & extension CRX-ID, stating our conversation here? I will look into it & come up with the best solution for you.

Just did, @sivsouvamMSFT thank you 🙏

Hey @drveresh, I wanted to let you know that we have been giving thoughtful consideration to the request for this feature. Our team is actively working on it and I would be happy to keep you updated on the progress as we move forward. I am confident that by June 2023, you will start to see some meaningful developments and I look forward to the opportunity to share these with you.

Hi @sivsouvamMSFT, it's July 2023 now, any update?

@varaduMSFT @sivsouvamMSFT As per our discussions, this feature should have been available by now.  How long your team is going to release this basic feature? Please share the concrete details.

@sivsouvamMSFT
Agree with everyone here.  This ability is basic and a decade overdue, and now 6 months past Microsoft's own Summer '23 deadline.  Is there an update on this?  Thank you for any updates you can share.

@varaduMSFT @sivsouvamMSFT @fetch-lab Absolutely no response from you since last year (Jul 4, 2023) on this open issue.  What is happening? Your team has been fooling everyone, at least me since 2019 about fake promises and timelines.  How long you need to deliver this single feature?

Hi, we are in beta testing of transfer of ownership. @drveresh  thank you for raising this bug and we hope you are unblocked.
We request other developers who may be facing this issue to drop us an email at<EMAIL_ADDRESS>

Hi @openchampagne & @cmdlinebeep,
Could you please share your extension details here over email? We have already started the beta testing for the feature "Transfer of Ownership".

Hello, we are pleased to inform you that we now have a stable and streamlined process for transferring ownership of accounts. If you wish to initiate a transfer, please reach out to us directly to our email.
Our team will guide you through the process and assist you with any queries you may have.
Thank you for your patience and continued support as we improved this feature. We look forward to assisting you.


Deprecation notice for preg_replace() with /e modifier

From the command line, when I type
$ ./symfony help
I get the following :
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/symfony-punkave/lib/vendor/symfony/lib/task/sfTask.class.php on line 307
Usage:
 symfony help [--xml] [task_name]
...

I use PHP 5.6.24 on Debian Wheezy.
So the error is obviously caused by the deprecation of the /e modifier for preg_replace in PHP 5.5, as stated in the PHP doc.
I solved it by changing the incriminated line from
return preg_replace('/\[(.+?)\|(\w+)\]/se', '$this->formatter->format("$1", "$2")', $this->detailedDescription);

to
preg_replace_callback('/\[(.+?)\|(\w+)\]/s', function($m) { return $this->formatter->format($m[1], $m[2]); }, $this->detailedDescription);

to use the recommended preg_replace_callback function, and the error disappeared. But I'm not sure I did it well so I prefer not to submit a pull request before discussing it.

Looks right to me (and apparently the task now runs for you). I'd take that
PR. It should be bc as far back as we need.
On Thu, Aug 4, 2016 at 10:05 AM, Sylvain Lelièvre<EMAIL_ADDRESS>wrote:

From the command line, when I type
$ ./symfony help
I get the following :
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/symfony-punkave/lib/vendor/symfony/lib/task/sfTask.class.php on line 307
Usage:
symfony help [--xml] [task_name]
...
I use PHP 5.6.24 on Debian Wheezy.
So the error is obviously caused by the deprecation of the /e modifier
for preg_replace in PHP 5.5, as stated in the PHP doc
http://php.net/manual/en/function.preg-replace.php.
I solved it by changing the incriminated line from
return preg_replace('/[(.+?)|(\w+)]/se', '$this->formatter->format("$1", "$2")', $this->detailedDescription);
to
preg_replace_callback('/[(.+?)|(\w+)]/s', function($m) { return $this->formatter->format($m[1], $m[2]); }, $this->detailedDescription);
to use the recommended preg_replace_callback function, and the error
disappeared. But I'm not sure I did it well so I prefer not to submit a
pull request before discussing it.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/punkave/symfony1/issues/5, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAB9fWEWNBQ7b4f0G9xLnFaB8XXMrWsgks5qcfGogaJpZM4Jcuzh
.

--
*THOMAS BOUTELL, *SUPPORT LEAD
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

This would be great. In the past I've stuck with PHP 5.3 and 5.4 because of deprecation warnings but we're planning on switching soon to 5.6 so I'm glad for this issue to be resolved.

Sorry but I screwed my PR #6 : I forgot to remove the /e modifier from the new function call... I'm on it.

PR #7 is waiting for merge. Now it should be ok. Sorry again.

I made some more research and it seems that my patch could introduce BC break with PHP 5.3.
Here is my code (in /lib/task/sfTask.class.php):
public function getDetailedDescription()
{
    return preg_replace_callback('/\[(.+?)\|(\w+)\]/s', function($m) { return $this->formatter->format($m[1], $m[2]); }, $this->detailedDescription);
}

The problem is my use of $this in a closure, which is allowed since PHP 5.4 only (see the Changelog section of the Anonymous functions man page of PHP).
I had a look at the LEXpress fork of Symfony1 and I prefer the way they handled it, by using an intermediary variable to avoid the use of $this within the closure :
public function getDetailedDescription()
{
    $formatter = $this->getFormatter();
    return preg_replace_callback('/\[(.+?)\|(\w+)\]/s', function ($match) use ($formatter) {
        return $formatter->format($match['1'], $match['2']);
    }, $this->detailedDescription);
}

@boutell Do I have to close the issue by myself ? I don't know if there are conventions about who close a ticket when the merge is done.

It's closed.
On Tue, Aug 16, 2016 at 5:14 AM, Sylvain Lelièvre<EMAIL_ADDRESS>wrote:

@boutell https://github.com/boutell Do I have to close the issue by
myself ? I don't know if there are conventions about who close a ticket
when the merge is done.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/punkave/symfony1/issues/5#issuecomment-240048718, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAB9ffdA_MgLs0Hjv5XH-PGlj3xB3jA-ks5qgX9bgaJpZM4Jcuzh
.

--
*THOMAS BOUTELL, *SUPPORT LEAD
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com


EnumerateInterfaces sometimes returns nothing

using System;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.Diagnostics.Runtime;

internal static class Program
{
    private static async Task Async() => await Task.CompletedTask;

    private static void Main()
    {
        const string d__0 = "Program+<Async>d__0";

        Task task = Async();

        using var dt = DataTarget.AttachToProcess(Process.GetCurrentProcess().Id, false);
        using var rt = dt.ClrVersions.Single().CreateRuntime();

        var query = from obj in rt.Heap.EnumerateObjects()
                    where obj.Type?.Name == d__0
                    select obj.Type;

        foreach (var inf in query.Single().EnumerateInterfaces())
        {
            Console.WriteLine(inf);
        }

        Console.WriteLine();

        foreach (var inf in Type.GetType(d__0).GetInterfaces())
        {
            Console.WriteLine(inf);
        }
    }
}

System.Runtime.CompilerServices.IAsyncStateMachine

/cc @Ne4to

similar to #671
https://github.com/microsoft/clrmd/blob/master/src/Microsoft.Diagnostics.Runtime/src/Utilities/COMInterop/HResult.cs#L32
- public static implicit operator bool(HResult hr) => hr.Value >= 0;
+ public static implicit operator bool(HResult hr) => hr.IsOK;

it helps for this example, but I'm not sure about all usages of if (hr) {} and if (!hr) {} in the codebase

Note that hr >= 0 is the right thing to do if you want to check for failure
While hr == S_OK is specific to the API and usually checks if results are available
Checking whether results are available is different from checking for failures, handling both by a bool conversion and plain if statement seems dangerous, maybe code should be more explicit about what its checking?

but I'm not sure about all usages of if (hr) {} and if (!hr) {} in the codebase

if (hr) is equvalent to SUCCEEDED(hr) and if (!hr) is equivalent to FAILED(hr).  I haven't taken a look at the bug yet.


React in Turkish

Hi, i'm still learning React and there are not so much resources in Turkish language so i want to share this course that i found in Youtube with beginners

Package.json has beed edited
New React course has beed added


add packaging dependency

Since this commit last week, loader.py depends on packaging. This commit specifies this dependency. Earlier versions than 24.1 might also work (I haven't run tests).

Hey, the checks did all work for that PR: https://github.com/mapproxy/mapproxy/actions/runs/9973828614
For which version of python did this error occur?

3.11.9; I'll come back with a reproducible example.

So, here is the reproducible example I have come up with. It needs the following files:
Dockerfile:
# docker build . --tag proxytest
# docker run --interactive --tty --publish 8080:8080 proxytest

FROM python:3.11.9

RUN pip3 install poetry
COPY pyproject.toml .
RUN poetry install

COPY mapproxy.yaml .

EXPOSE 8080
CMD ["poetry", "run", "mapproxy-util", "serve-develop", "mapproxy.yaml", "-b", "<IP_ADDRESS>:8080"]

pyproject.toml:
[tool.poetry]
name = "reprod"
version = "0.1.0"
description = ""
authors = ["zabop<EMAIL_ADDRESS>readme = "README.md"

[tool.poetry.dependencies]
python = "3.11.9"
mapproxy = {git = "https://github.com/mapproxy/mapproxy.git"}
werkzeug = "1.0.1"
pillow = "^10.4.0"
# packaging = "^24.1"

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

mapproxy.yaml:
services:
  tms:
    use_grid_names: true
    origin: 'nw'

layers:
  - name: italyparcels
    title: italyparcels
    sources: [ItalyCache]

caches:
  ItalyCache:
    grids: [webmercator]
    sources: [ItalyWMS]
    cache:
      type: file
      directory: cached_tms
      directory_layout: tms

sources:
  ItalyWMS:
    type: wms
    req:
      url: https://wms.cartografia.agenziaentrate.gov.it/inspire/wms/ows01.php?language=ita&
      layers: CP.CadastralParcel,strade,vestizioni,province,codice_plla,fabbricati,CP.CadastralZoning,acque,simbolo_graffa,copyright
    supported_srs: ['EPSG:25832']

grids:
  webmercator:
    base: GLOBAL_WEBMERCATOR

globals:

One can build the image using docker build . --tag proxytest, and run it via docker run --interactive --tty --publish 8080:8080 proxytest. With the files shown above, the output is:
Traceback (most recent call last):
  File "/root/.cache/pypoetry/virtualenvs/reprod-il7asoJj-py3.11/bin/mapproxy-util", line 5, in <module>
    from mapproxy.script.util import main
  File "/root/.cache/pypoetry/virtualenvs/reprod-il7asoJj-py3.11/lib/python3.11/site-packages/mapproxy/script/util.py", line 27, in <module>
    from mapproxy.config.loader import load_plugins
  File "/root/.cache/pypoetry/virtualenvs/reprod-il7asoJj-py3.11/lib/python3.11/site-packages/mapproxy/config/loader.py", line 34, in <module>
    from packaging.version import Version
ModuleNotFoundError: No module named 'packaging'

However, if I uncomment line 13 in pyproject.toml and rebuild with the packaging = "^24.1" dependency:
docker build . --tag proxytest && docker run --interactive --tty --publish 8080:8080 proxytest
then I get a running server. Loading http://localhost:8080/tiles/italyparcels/webmercator/17/70521/48863.png in a browser returns this tile:

I hope this helps, I am interested in your view on this.

Thank you!
I noticed that the packaging dependency is part of requirements-test so that's the reason why the tests did not fail, but that is something I only thought about today. I will see if I can get rid of the dependency.


undefined local variable or method 'cache_key_for_taxons'

I have installed below gems.
em 'spree', github: 'spree/spree', branch: '2-4-stable'
gem 'spree_auth_devise', github: 'spree/spree_auth_devise', branch: '2-4-stable'
gem 'spree_gateway', github: 'spree/spree_gateway', branch: '2-4-stable'
gem 'alchemy_spree', github: 'magiclabs/alchemy_spree', branch: 'master'
And whenever try to run cms page, i am getting error
undefined local variable or method `cache_key_for_taxons
How to fix it?

Is this still an issue? If so, reopen the issue.


Add JYRadarChart to Charts section

Project URL
https://github.com/johnnywjy/JYRadarChart
Description
An iOS open source Radar Chart implementation.
Checklist

[x] Only one project is in this pull request
[x] Addition in chronological order (bottom of category)
[x] Travis CI pass
[x] Supports iOS 7 or later
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

awesome-ios-chart literally got our /Charts Section. It is even in order with our Chart list...

Thanks for contributing!

🤔


Update to NodeJS 4.2.6

Updated yesterday to 4.2.5, and just a few hours later new version is available…

:+1:


No output with Jest v12.1.2-alpha

v12.1.2-alpha just prints the version with no other output, and doesn't actually seem to run any tests:
C:\src\testappwithjest2<EMAIL_ADDRESS>λ node_modules\.bin\jest
Using Jest CLI v12.1.2-alpha.a482b15c, jasmine2

v12.1.1 works fine:
C:\src\testappwithjest2<EMAIL_ADDRESS>λ node_modules\.bin\jest
Using Jest CLI v12.1.1, jasmine2
Running 1 test suite...foo-test
 PASS  __tests__\foo-test.js (0.022s)
1 test passed (1 total in 1 test suite, run time 0.871s)

--verbose doesn't help either.
This is a fresh installation on a new project, with no config in package.json (so, using all the defaults).

@cpojer - This bisects to df1563fcbd80d8a44caa5b7af1def686f0f5ed1f for some reason - The commit immediately before that one (90e942f0d53ef09fc1c399e53afe7425593f6297) works properly.

Yap, already fixed on master. The alpha release are pretty much just for the Jest core team (= me). Sorry about the issue.


can add webgl render?  i m try add, but some object no export.

can add webgl render?  i m try add, but some object no export.

It should be possible to add a WebGL rendering system, however it will take quite a bit of work (and modification to the code base!). If you follow the cues from the canvas drawing then it should be quite possible to add webgl, (this work has sort of been done before and then was removed because it made the library too heavy https://github.com/uber/react-vis/commit/028fb23c5f2e2f13f08f3f9b627bd4827174400f)

I'm gonna mark this as closed, but feel free to continue the conversation under the fold if you like


safely checking for mpi4py import

The complications from #56 continue.
Checking from mpi4py import MPI on NERSC when the main process wasn't started by srun results in a fatal error.
This seemed like it could be resolved by first checking the import in a subprocess. If the calling process was started with srun then there is no fatal error and we can safely check for mpi4py installation status, otherwise the import check can be skipped.
However, trying this procedure on Sirepo Jupyter and running from mpi4py import MPI in a subprocess always results in an error regardless of how the main process was started:
[cli_0]: write_line error; fd=6 buf=:cmd=init pmi_version=1 pmi_subversion=1
:
system msg for write_line failure : Bad file descriptor
[cli_0]: Unable to write to PMI_fd
[cli_0]: write_line error; fd=6 buf=:cmd=get_appnum
:
system msg for write_line failure : Bad file descriptor
Fatal error in PMPI_Init_thread: Other MPI error, error stack:
MPIR_Init_thread(586):
MPID_Init(175).......: channel initialization failed
MPID_Init(462).......: PMI_Get_appnum returned -1
[cli_0]: write_line error; fd=6 buf=:cmd=abort exitcode=1093647
:
system msg for write_line failure : Bad file descriptor

Unless the subprocess also executes python through mpiexec.
@robnagler do you have any suggestions for fixing this, or just handling the root problem in a better way?

I'd be a fan of moving this check in to the init.py and saving a flag as a global variable for if the import succeeded, which would also let us have the size, rank, etc, as module variables. mpi4py would still need to be a dependency though.
This would also allow for us to create an "environment" variable that can be checked if we can figure out solid checks for where we are running (i.e. does RADIA_SCRATCH exists or similar envvars). Then adding a new run environment could be a single file change and automatically update the "runner" as either srun, mpiexec, or none

We solve this problem differently in Sirepo:
        import mpi4py.MPI
        if mpi4py.MPI.COMM_WORLD.Get_size() > 1:
            c = mpi4py.MPI.COMM_WORLD
    except Exception:
        pass
    if c:
        inside mpi

@robnagler As far as I know this is not generally a safe way to do the check:
hallcc@cori13:/global/u1/h/hallcc> ipython
Python 3.9.7 (default, Sep 16 2021, 13:09:58)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.31.1 -- An enhanced Interactive Python. Type '?' for help.

In [1]: try:
   ...:     import mpi4py.MPI
   ...:     if mpi4py.MPI.COMM_WORLD.Get_size() > 1:
   ...:         c = mpi4py.MPI.COMM_WORLD
   ...: except:
   ...:     pass
   ...:
[Wed Sep 28 14:30:55 2022] [unknown] Fatal error in PMPI_Init_thread: Other MPI error, error stack:
MPIR_Init_thread(537):
MPID_Init(246).......: channel initialization failed
MPID_Init(647).......:  PMI2 init failed: 1
Aborted (core dumped)
hallcc@cori13:/global/u1/h/hallcc>

In a subprocess would work. I suspect we never run a parameters.py without MPI on NERSC,

From @cchall

the reason to do this check in the first place is due to Cori's restriction on one job per node. So to ensure #56 doesn't result in launching to an already used node you need to check for nodes that are occupied, which in turn will require communication over MPI - if it is being used - so you have to check.

Fixed in https://github.com/biviosoftware/home-env/pull/50. The crashes shouldn't happen. This is a NERSC control to prevent MPI from running on a login node. The code is in alpha images. I don't think we should ever get into this situation in the future. It should always be possible to try/except. I think therefore you don't need to do the subprocess solution. If it recurs, we should address the solution directly.


Add a notebook specific label

Why you need this feature:
Right now, there's just one label opendatahub.io/dashboard=true for notebooks. Adding an explicit notebook specific static label would help us utilize the notebook component effectively.
Describe the solution you'd like:
For instance, we're trying to update the Data Science Pipelines' network policy to connect to the notebook pod. In this case, having an exclusive static label would be really helpful.

Moved to JIRA: https://issues.redhat.com/browse/RHOAIENG-2220
closing this issue.
please check it out details there.


Bug: form_textarea in form_helper does not create specified 'rows'

Describe the bug
A clear and concise description of what the bug is.
CodeIgniter 4 version
4.04
Affected module(s)
system/Helpers/form_helper.php
function form_textarea
lines 298 to 301
Expected behavior, and steps to reproduce if appropriate
when I create a textarea using echo form_textarea('text', set_value('text'), ['rows' => '5']);
I still get 10 rows...anyway for a quick fix is to change lines 298 to 301 from this:
$defaults = [
'name' => is_array($data) ? '' : $data,
'cols' => '40',
'rows' => '10',
];
to this:
$defaults = [
'name' => is_array($data) ? '' : $data,
'cols' => $extra['cols'] ?? '40',
'rows' => $extra['rows'] ?? '10',
];
Please consider this as I use the form helper a lot and my proposed quick-fix adds almost no overhead to system.

There is a fix for this in the latest develop branch. Can you pull that and check if that resolves your issue?

I believe it's fixed by #3415

Ah, sweet.


free rules data and results

What does this PR do?
This adds missing libddwaf free functions
Motivation
Memory leaks were reported by users

Why is this triggering segfaults? I think not all of them need to be freed. @Anilm3 @Taiki-San could you please take a look? Thanks a lot!

I think it might be the data one as it's not showed in libddwaf examples

Why is this triggering segfaults? I think not all of them need to be freed. @Anilm3 @Taiki-San could you please take a look? Thanks a lot!

All good, it was a mistake from us: the WAF was already free-ing the ddwaf_objects passed to ddwaf_run 👍


alignment extent

When scrolling all the way down, the alignment Morph that holds the outlets doesn't seem to extend correctly.

this was tackled in https://github.com/hpi-swa-teaching/MensaWidget/issues/26


Better bot movement

Short Description
Human does not go through building and bot shouldn't too.
Currently, the bot destination is being decided on every tick(), ie. the destination can change between tick. It will just get the nearest fort and take the shortest route (usually, straight path).
Possible Solution
Bot should decide which destination to go to, ie which fort to visit next, and stay that way until there is a reason to do so. Once the destination is fixed, we get the direction through Google Direction API. We can then continue using the current algorithm to move through the coordinates returned by  the API. This will make sure we are walking on the road and not through buildings.

@rawgni love the FR, but unless you intend on developing both of these, do you mind splitting them into 2 separate feature requests, because although they are related, they do not need to be achieved together and therefore one could be met independently of the other

Google direction API doesn't work for a very short distance, i.e. it will just tell you to walk straight to the destination. Hence when two pokestops are close to each other, direction API won't help.
Altitude algorithm is important though. I too believe that randomizing the altitude is not a good choice because one's altitude should not keep jumping up and down unless you're walking in a mountain jungle. Change in altitude should happen gradually, or once after every few hundred meters.

@lntn I am not sure what you mean by not work. Are you saying that if the pokestop is close to each other , you shouldn't walk straight to it ?

@rawgni what I mean is Google maps and its API is not accurate down to every meter, or at least the distance from where you can spin a pokestop. If you do a map search, it will only show you the direction (driving/walking) to the nearest road point, then tell you to walk over to your destination. This walking over part likely to be through building.
Another possible issue is walking direction API only work perfectly for a few country. If there happen to be flyover, bridge, highway, expess way etc... the direction API may mess it up and may tell you to walk/drive a few km for an exit & u-turn.

@lntn If the pokestop happens to be far from road point, then we can't stop it from walking through building. A human would probably need to get off the road to do the same.
I would think direction API will be quite accurate for most location that people bot in. Does it really matter if the bot ask you to drive a few more km for an exit ?

Check out the screen shot above. The red line is for train tracks, the blue line is for road.
The bot is basically crossing the train track, passing through a couple of houses to get to the other side of the road and back.

This can be achieved through using path.json
Applying it to all walkers would be rather difficult. But still a FR regardless. In the mean time, try to setup the dedicated paths.

@mjmadsen yep it's achieveable using path.json but wouldn't be nicer if we could do it without. not everyone wants/knows how to generate a path.json
Initially, i thought why can't we have the bot spawn at a position. look at all the available forts in the area, plans the route it wants to take for the day and execute it.

Yeah, that's while I'll leave it open as a FR. Once we can get all these basic elements in, it'll be fun to work on AI elements.

Using google direction api is already implemented with Polyline walker.

@alexyaoyang this FR wants it to not have to depend on followpath. please read my reply to @mjmadsen above

@rawgni Hmm ok, the only other move task which allows you to use polyline walker is move to map pokemon for now. As time goes by, the other move tasks will implement using polyline walker too.

@lntn
.get_alt() implements that in the polyline class

Altitude algorithm is important though. I too believe that randomizing the altitude is not a good choice because one's altitude should not keep jumping up and down unless you're walking in a mountain jungle. Change in altitude should happen gradually, or once after every few hundred meters.

All the points in this issue are already implemented


Still Maintained? How to install on 0.13+?

Is this still maintained? Terraform changed how providers are installed in 0.13+ and so I think a provider block is needed, and likely this provider should be officially published. Not sure.
Main question is whether or not you are still maintaining this?

Hi @ghostsquad didn't get a chance to test with 0.13 yet but will check tomorrow. Officially terraform will not support this ( long story ) ...

Officially they won't support this? What does that mean?

hi @ghostsquad just tested with 0.13+ and updated README with instruction of how to use it.
"Officially they won't support this? What does that mean?" last time I checked they would not want it in official terraform registry, but things have changed now so might try again...

@ghostsquad I thought you would like to know that assert is now available directly from terraform repository: https://registry.terraform.io/providers/bwoznicki/assert/latest/docs/data-sources/test

Yaya! 🥳


[1.3] Force commons-io transitive dependency version

Description
Forces the transitive dependency on commons-io to a non-impacted version.
Fixes CVE-2024-47554
Note: as a transitive dependency, no SHAs, and the version bump (#16780) is already included in release notes for the OpenSearch bump
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Thank you @dbwiddis !


Implementing issue #1 "Colors on terminal".

I've unnexpectedly found the time to develop the feature I proposed you (issue #1 ).
3 files where modified:

src/logger.sh - obviously to add the feature
test/logger.sh - to test the feature and add a test on the syntax validity of src/logger.sh
readme.md - to add the description of the new feature.

Please sign the DCO.


Don't allow expressions on deprecated/legacy executor attributes sinc…

…e they are model references
hey @kabir, the change was not intentional, please go ahead with this fix.

Windows Build 2970 is now running using a merge of 5c4748e2f65dd38f0f03608a1091008131a05adf

Linux Build 7931 is now running using a merge of 5c4748e2f65dd38f0f03608a1091008131a05adf

Linux Build 7931 outcome was SUCCESS using a merge of 5c4748e2f65dd38f0f03608a1091008131a05adf
Summary: Tests passed: 3060, ignored: 358 Build time: 00:48:14

Windows Build 2970 outcome was SUCCESS using a merge of 5c4748e2f65dd38f0f03608a1091008131a05adf
Summary: Tests passed: 3060, ignored: 358 Build time: 00:50:48


c-file-style/tab-width in .dir-locals.el does not take effect

Observed behavior
git clone git://sourceware.org/git/binutils-gdb.git
# open binutils-gdb/gdb/dwarf2-frame.c or any other binutils/*.c gold/.cc file

tab-width is 2, though gdb/.dir-locals.el sets it to 8.
gdb/.dir-locals.el:
(
 (tcl-mode . ((tcl-indent-level . 4)
	      (tcl-continued-indent-level . 4)
	      (indent-tabs-mode . t)))
 (nil . ((bug-reference-url-format . "http://sourceware.org/bugzilla/show_bug.cgi?id=%s")))
 (c-mode . ((c-file-style . "GNU")
	    (mode . c++)
	    (indent-tabs-mode . t)
	    (tab-width . 8)
	    (c-basic-offset . 2)
	    (eval . (c-set-offset 'innamespace 0))
	    ))
 (c++-mode . ((eval . (when (fboundp 'c-toggle-comment-style)
			(c-toggle-comment-style 1)))))
)

Yes it sets *.c to use c++-mode! But it is not relevant. As a simple .dir-locals.el in the project root does not work, either:
((nil . ((indent-tabs-mode . t)
         (tab-width . 8)))
 (c-mode . ((c-file-style . "gnu"))))

Expected behavior
tab-width is 8 and c-file-style is "gnu".
Steps to reproduce
I tried deleting (push '(t tab-width) dtrt-indent-hook-generic-mapping-list) in core/core-editor.el to nullify dtrt. tab-width is 4, not the expected 8.
System information

Click to expand
- OS: gnu/linux (x86_64-pc-linux-gnu)
- Emacs: 27.0.50 (Sep 09, 2018)
- Doom: 2.0.9 (develop 85ea30377f764f31760023ced36b9badf32c8a56)
- Graphic display: t (daemon: nil)
- System features: XPM JPEG TIFF GIF PNG SOUND DBUS GSETTINGS GLIB NOTIFY GNUTLS LIBXML2 FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS JSON GMP
- Details:
  ```elisp
  elc count: 1
  uname -a:  redacted
  modules:   (:feature debugger eval (evil +everywhere) file-templates (lookup +devdocs +docsets) snippets spellcheck (syntax-checker +childframe) workspaces :completion company (ivy +childframe) :ui doom doom-dashboard (doom-modeline +new) doom-quit evil-goggles hl-todo nav-flash treemacs (popup +all +defaults) vc-gutter vi-tilde-fringe window-select :editor lispy multiple-cursors rotate-text :emacs dired ediff electric eshell hideshow imenu vc :tools editorconfig make magit password-store pdf tmux upload :lang cc data emacs-lisp go haskell javascript markdown (org +attach +babel +capture +export +present) python sh :app rss (write +wordnut +langtool) :config default :private my-cc my-python)
  packages:  (atomic-chrome avy (ccls :ignore t) clang-format company-lsp eglot eshell-autojump evil-nerd-commenter function-args htmlize link-hint lispyville (llvm-mode :ignore t) (lpy :recipe (lpy :fetcher github :repo abo-abo/lpy :files (*))) (lsp-mode :ignore t) (lsp-python :ignore t) lsp-rust (lsp-ui :ignore t) rg rust-mode smart-forward symbol-overlay (tablegen-mode :ignore t) tldr try)
  exec-path: (~/.cargo/bin ~/bin ~/.local/bin /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin ~/Dev/Emacs/emacs/lib-src)

</details>

Does disabling dtrt-indent entirely fix the issue?
(remove-hook! '(change-major-mode-after-body-hook read-only-mode-hook)
  #'doom|detect-indentation)

After applying (remove-hook! '(change-major-mode-after-body-hook read-only-mode-hook)   #'doom|detect-indentation)
M-: change-major-mode-after-body-hook => (editorconfig-mode-apply turn-on-solaire-mode)
M-: read-only-mode-hook => (editorconfig-mode-apply)
Open gdb/dwarf2-frame.c, M-: tab-width => 4, M-: c-basic-offset => 4

It seems an issue of the binutils-gdb. Its .dir-locals.el does not set tab-width while the inferred indentation 2 is not suitable as the value of tab-width because the weird GNU style mixes spaces and tabs..
Closing as I can work around those repositories with:
% cat .dir-locals-2.el
((nil . ((tab-width . 8))))


Added project description on work exp

Added project description to work experience and a field on the database for project description

@MathildaShongwe15  Refactor: just a note on DRY.


undefined method `next_time' for nil:NilClass

I am updating the gems in our Gemfile, and I'm now running into an error on this line:
https://github.com/sidekiq-scheduler/sidekiq-scheduler/blob/87dc745d7f82a6ce89fea6c3a5eb5ffae223532b/lib/sidekiq-scheduler/scheduler.rb#L132
Still figuring out what's going on, but I am already creating this issue so other people can find it too.

I haven't found the time to fully dig into it. I created the issue mostly so people can find this when they run into this. I imagine that it's our combination of gems. I did a bundle update upgraded to Sidekiq 6.5.9.
I'm going to have to figure this out soon, if I find something I'll post it here.

I encountered the same error (using sidekiq 7.2.2 and sidekiq-scheduler 5.0.3). Starting of today I got the following error while attempting to start Sidekiq:
11:36:07 sidekiq.1 | 2024-05-01T09:36:07.190Z pid=515927 tid=axvj INFO: Scheduling foo {"class"=>"FooJob", "at"=>"2024/04/30", "enabled"=>false, "queue"=>"default"}
11:36:07 sidekiq.1 | 2024-05-01T09:36:07.191Z pid=515927 tid=axvj WARN: {"context":"Exception during Sidekiq lifecycle event.","event":"startup"}
11:36:07 sidekiq.1 | 2024-05-01T09:36:07.191Z pid=515927 tid=axvj WARN: NoMethodError: undefined method `next_time' for nil
11:36:07 sidekiq.1 | 2024-05-01T09:36:07.191Z pid=515927 tid=axvj WARN:
11:36:07 sidekiq.1 | undefined method `next_time' for nil
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/scheduler.rb:133:in `block in load_schedule_job'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/scheduler.rb:123:in `each'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/scheduler.rb:123:in `load_schedule_job'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/scheduler.rb:101:in `block in load_schedule!'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/scheduler.rb:99:in `each'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/scheduler.rb:99:in `load_schedule!'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/manager.rb:24:in `start'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler/sidekiq_adapter.rb:41:in `start_schedule_manager'
11:36:07 sidekiq.1 | /home/maurice/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/sidekiq-scheduler-5.0.3/lib/sidekiq-scheduler.rb:21:in `block (2 levels) in <main>'

I have a job that has been scheduled using an at schedule type:
:scheduler:
  :schedule:
    foo:
      class: FooJob
      at: '2024/04/30'
      enabled: false

It seems like the error occurs when a job has been scheduled using an at rule with a date in the past. I have created a pull request to resolve this issue: https://github.com/sidekiq-scheduler/sidekiq-scheduler/pull/466

Thank you so much @mauricebolhuis! I will look into this issue next week along with other PRs I have on my list! I really appreciate the PR 🙏

Fixed by #466 466


Make ramda REPL not require "R." prefix

When writing code in the ramda REPL it's slightly tedious to add "R." to every ramda function we use.
Please could you default the ramda functions?
Thanks

Seems reasonable to me. What do you think, @davidchase?

+1

Three minor problems:
Object.keys(R).filter(k => k in window); \\ => ["find", "length", "toString"]

But +1 of course.

i also prefer writing without the R, but we should provide both. And this issue really belongs on the docs repo. Unfortunately since both Sanctuary and ramda-fantasy provide Just, Nothing, etc. those will have to be fully qualified

i am neutral on the subject since you can easily do const {compose, reduce, map, filter} = R;

@davidchase it's easy, but tedious/unnecessary. I often copy and paste various code blocks from real projects I'm working on, and having to find/copy/write the const {...} = R lines is annoying.
@asaf-romano agreed. window functions should be explicit.

Ok let's do as @buzzdecafe suggests move this to the ramda docs issue tracker and I will get to it hopefully tonight... how does that sound?

SGTM

Oh cool, didn't realise the REPL was on github. I'll submit the PR.

Yeah I've been working a PR to make some fixes and as well as Babel so that has prevented this fix from coming in


Possible to using a protein-ligand structure as input?

Yes, it is possible to use protein-ligand structure as input for PocketGen.


Write a specification for the marble diagram DSL

As discussed in #16 it would be useful to have a document that fully specifies the behaviour of marble diagrams, possibly in a way that would allow us to unify the behaviour of RxJS and @cycle/time's diagrams.
This could be a markdown file in this repository or a separate repository altogether.

I've been intending to do this...  Maybe we can hack on it in cycleconf? :)

Sounds good 👍

This issue was moved to cyclejs/cyclejs#763


hi, pretrained model has no 'state_dict'

Hello, which model are you using and where did you get it, Baidu NetDisk or Google Cloud? I will verify it and reply to you.

Download from Baidu NetDisk, file"eca_resnet50_k3557.pth.tar".
pls check it. thank you ~

Hello, which model are you using and where did you get it, Baidu NetDisk or Google Cloud? I will verify it and reply to you.

Download from Baidu NetDisk, file"eca_resnet50_k3557.pth.tar".
pls check it. thank you ~

Hello, which model are you using and where did you get it, Baidu NetDisk or Google Cloud? I will verify it and reply to you.

sorry，I have a mistake. These models have no problem. thank you ~


Test latest version of Ubuntu 20.04 image

/azp run azure-dev - template - tests

These tests look good. I think we can remove the pin from our pool configs.


vesktop: don't use system vencord by default

Description of changes
this prevents future occurrences of #310227 by default
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

Are you sure making this imperative is the right call? Using the nixpkgs vencord makes way more sense.

Are you sure making this imperative is the right call? Using the nixpkgs vencord makes way more sense.

Please read the conversation linked in the PR description for more context — but to sum it up, Vencord suffers from inconsistent version bumps, constant breakage due to unannounced upstream changes and various other things that jeopardize the stability of using Vesktop.
Contrariwise, the builtin updater is able to update on a per-commit basis, allowing it to match Discord upstream better and more in-time, as well as ignoring Ven's... frankly haphazard release schedule. It's just an overall better option.

Using the updater is just an overall better option, unless we start to update Vencord on a per-commit basis too, which IMO would just cause unnecessary maintenance burden for the maintainers of Vencord (which I am not a part of) due to the sheer volume of commits every day — Nightly Vencord, in all honesty, is just a bit too much to bear.

this is also not mentioning the delay between these updates going from master -> nix{pkgs,os}-unstable -> nixos-23.11/24.05. during this, the issue mentioned above will persist until the user manually overrides this option
being a bit more imperative isn't great, but it's a much better alternative to the primary function of this package breaking fairly regularly. the option (and our patch, as keep in mind this is not a feature intended by or supported by upstream) also remains for those who wish to not go this route

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/1636


[Java] Understanding Enum Types in Java: Building A Card Dealing and Shuffling App that  determines the hand ranking category of the player’s hand

Proposed title of Article
[Java] Understanding Enum Types in Java: Building A Card Dealing and Shuffling App that  determines the hand ranking category of the player’s hand
Proposed article introduction
Enums types are powerful tools in Java. Enums could be used to define a class of named constants and offer the advantage of type safety. They could also be used as keys in a switch statement or expression.
This article explains the basic structure of an enum class and then takes it a step higher by exploring the relationship between enums and classes(enums implementing interfaces, instance variables, methods and constructors), exploring how to set custom enum ordinals. Finally, the article concludes by demonstrating the application of enums in building an app that determines the hand ranking category of a player’s hand in a poker game.
Key takeaways
At the end of the tutorial, the reader should understand the following;

The basic structure of an enum type
The relationship between enums and classes:
- Defining constructors, instance and methods variables in enum classes
- Enums implementing interfaces
Defining custom ordinals for enum types and accessing ordinal values for enum constants.
The application of enums in building a card shuffling and dealing application that determines the hand ranking category of a player’s hand in a poker game.
The reader will also gain an understanding of some Java Lambda functions

Article quality
During my research about enum types in Java, I discovered that most tutorials offer only a basic explanation about enum types and their uses. My article offers an exhaustive exploration of the topic curated from a number of sources from the internet. Also, my article contains demonstrations on how to use enums by building a part of a poker app that determines the hand ranking category of a player’s hand utilizing Java Lambda functions in the process.
References
https://stackoverflow.com/questions/5372855/can-i-specify-ordinal-for-enum-in-java
https://en.wikipedia.org/wiki/List_of_poker_hands
https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html
https://www.w3schools.com/java/java_enums.asp

Good afternoon and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

Okay, thank you

Thanks for your detailed explanation about what makes your proposed article unique, @ehizman. Topic approved 🚀.


[launch] fix identifying nested defaultdicts during analysis save

And add associated tests

The fix looks correct.  Maybe the test is a bit hard to understand? The test does not verify that the result is correct.


Programs Landing Page Content/Blocks

#2
#3
Section - border-between, 50-50 layout, floating image

Free Form Text

Section - quartz background,

#17 (75-25 layout)

#6

Primary Immunodeficiency change to Rare Disease
Remove get in touch section

this is done:https://main--takeda-ihs--hlxsites.hlx.page/programs/population-health


ROX-25688: Config support for versioned vulns

Description

We have added a new file, scanner/VULNERABILITY_VERSION. This file defines the desired vulnerability bundle version for the Scanner (e.g., v1).
Updated the Makefile to read from scanner/VULNERABILITY_VERSION. Whatever version is in there gets hard-coded into the Scanner binary.
The version gets passed to the config parser, similar to how ROX_VERSION works.
For non-release/non-nightly builds, the version defaults to dev unless explicitly set otherwise.

This enables Scanner to request vulnerability bundles by version across different release and development builds.
User-facing documentation

[x] CHANGELOG is updated OR update is not needed
[x] documentation PR is created and is linked above OR is not needed

Testing and quality

[x] the change is production ready: the change is GA or otherwise the functionality is gated by a feature flag
[x] CI results are inspected

Automated testing

[x] added unit tests
[ ] added e2e tests
[ ] added regression tests
[ ] added compatibility tests
[ ] modified existing tests

How I validated my change
Unit tests.
Local scanner dev build run, with a config using the new vulnerability version.
http_listen_addr: <IP_ADDRESS>:9443
grpc_listen_addr: <IP_ADDRESS>:8443
indexer:
  enable: true
  database:
    conn_string: "host=/var/run/postgresql"
    password_file: ""
  get_layer_timeout: 1m
  repository_to_cpe_url: https://access.redhat.com/security/data/metrics/repository-to-cpe.json
  name_to_repos_url: https://access.redhat.com/security/data/metrics/container-name-repos-map.json
matcher:
  enable: true
  database:
    conn_string: "host=/var/run/postgresql"
    password_file: ""
  vulnerabilities_url: https://localhost:8000/ROX_VERSION/ROX_VULNERABILITY_VERSION
mtls:
  certs_dir: certs/scanner-v4
log_level: info

$ make certs
$ make bin/scanner
$ ./bin/scanner --conf config.yaml
...
{"level":"error","host":"descending","component":"matcher/updater/vuln/Updater.Start","error":"Get \"https://localhost:8000/dev/dev\": tls: first record does not look like a TLS handshake","time":"2024-08-13T17:02:44-07:00","message":"errors encountered during updater run"}
...

Notice the https://localhost:8000/dev/dev

There are bundles available in GCS bucket
Can we consider to test against that?


[RFE] Steve should provide pod data along with list of workloads

This issue is part of a set of Steve performance enhancements for v2.7.x. https://github.com/rancher/dashboard/issues/5243
When the UI displays a list of workloads in the UI, it also must loop over pods to get these properties for each workload:

The total count of pods that match the workload selector
The health status of all pods in the workload - pending, active etc.
The total pod restart count of all pods in the workload

It could improve performance in the UI if Steve could provide the above three pieces of information so that the UI would not have to loop over the pods so many times.

Internal reference: SURE-5397


Support for defining patternProperties on dictionary properties

I have a case where I'm using a dictionary to allow an arbitrary length object with user-defined key names. I need to perform additional validation on these key names but have not found a way to do it in the library currently.
I propose supporting the DataAnnotations RegularExpressionAttribute on dictionaries -- using the pattern provided to build the patternProperties schema value(s)
        [Required, RegularExpression(".*")]
        public Dictionary<string, string> People { get; set; }

This would generate the following schema:
{
  "type": "object",
  "patternProperties": {
    ".*": { "type": "string" }
  },
  "additionalProperties": false
}

Reference: https://json-schema.org/understanding-json-schema/reference/object.html#pattern-properties

Implement in JsonSchemaGenereator. GenerateDictionary and search for RegularExpressionAttribute in the source code for how to implement this...

This test will break because currently we use this regex for the values:

In that case, it might make sense to use a custom attribute for setting this property in order to avoid a breaking change, or limiting the ability to validate values.

I wonder what scenario makes more sense to support with the RegularExpressionAttribute here?

https://github.com/RicoSuter/NJsonSchema/pull/995


tasks are marked as changed always

This galaxy roles work nicely that I can use directly without modification. Good job.  👍
But when repeatly run the ansible playbook, most tasks are still marked as changed
Any suggestions to get ride of it? I'd like to get all OK status in the end.
TASK [haproxy : Empty the folder if not already empty] *************************
changed: [10_1_1_2]

cmd: find /etc/haproxy/compiled -name *.cfg -exec rm -f {} ;

start: 2016-05-17 17:05:40.986202

end: 2016-05-17 17:05:40.992326

delta: 0:00:00.006124

TASK [haproxy : Build up the global config] ************************************
changed: [10_1_1_2]

TASK [haproxy : Build up the default config] ***********************************
changed: [10_1_1_2]

TASK [haproxy : Assemble the backends configuration file] **********************
changed: [10_1_1_2]

msg: OK

TASK [haproxy : Assemble the frontends configuration file] *********************
changed: [10_1_1_2]

msg: OK

TASK [haproxy : Assemble the listen sections configuration file] ***************
changed: [10_1_1_2]

msg: OK

TASK [haproxy : Assemble the userlists sections configuration file] ************
changed: [10_1_1_2]

msg: OK

I don't think it would be 100% possible to have the correct status for each tasks.
The module creates separate files for each section then join them together in a big readable file.
In the best case scenario, we could generate the last file in a temporary folder then compare the hash with the current file. before copying over (and trigger the 'CHANGED' state). You would still be left with 90% of task with the CHANGED state (all task related to each file generation).
Unless we go crazy with regex, I dont think there is a proper way to check if the files need to be regenerated again.
An official haproxy module has been created (see #23 - http://docs.ansible.com/ansible/haproxy_module.html ) but has limited options so far.


feat(qwik-city): export Qwik City RedirectMessage class

Fix for #3952

CI failing, need to update api files!

Do you mean the api.md file? Sorry, I have no experience with this yet. Can you give me a hint what I have to do? The file says that it is generated automatically.

@zanettin has helped me out. Thanks! I have updated the API files.

Amazing! thanks u Fabian!


How To Set a recursor

Greetings!!
Can anyone give me a hint on how to use a recursor ? I tried to set recursor list using:
--extra-vars "consul_recursors=<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>"

However, it's not working, because it is getting parsed i config.json in the following manner:
"recursors": [
"1",
"9",
"2",
"."
...

Any hints ?
Thanks again!!

So the recursors are taken in as a list, each ip being an element of it.

_ ... --extra-vars "consul_recursors=['192.X', '192.Y', '192.Z']

That should work, or put single quotes around each element.

Thanks so much @rkgyellowjacket

@rkgyellowjacket Thank you for helping out!

The same result @rkgyellowjacket. Here is the directive I am issuing (this time I tried to configure for dnmasq):
--extra-vars "consul_dnsmasq_servers='<IP_ADDRESS>','<IP_ADDRESS>','<IP_ADDRESS>']"

The output of /etc/dnsmasq.d/10-consul:
--extra-vars "consul_dnsmasq_servers='<IP_ADDRESS>','<IP_ADDRESS>','<IP_ADDRESS>']"

server='
server=1
server=9
server=2
server=.
server=1
server=6
server=8
server=.
server=9
server=6
server=.
server=2
server=4
server=5
server='
server=,

Very weird :(

@akamalov You should have a look at the ansible docs; http://docs.ansible.com/ansible/latest/playbooks_variables.html#passing-variables-on-the-command-line
You might wan't to give json formatted extra vars a try for more complex data types. I also advice you to make use of the host and group variables. Or set these in your sites.yml or a separate vars file that you include. It will make things a lot simpler!

Thanks @groggemans!!!


Request - Enemizer

This tool is impressive but to make it really impressive enemies need to be shuffled.

thanks for your feedback. due to the way the game attaches sprites sheets on a per room basis, enemy randomization is not possible without a tremendous amount of work remapping the entire rom. as a result, this feature is likely not going to be on the roadmap anytime soon.

Is randomizing boss locations feasible at least, or still too much work to be worth it? You'd also probably have to scale their stats to match their new locations so runners won't accidentally walk into a certain death.


zipkin improvement

The PR implement the functionality to create nested zipkin spans and some other improvements:

change macros to inline functions
add warning messages to indicate why spans are no longer sending to the zipkin collector
add create_trace_with_start_time for tracking some async operations
use lagacy format for json encoding to be able to interoperate with Jaeger collector
add fc_trace_log to correlate zipkin traces with log messages.
add wait_time_seconds configuration options for the initial wait time to connect to zipkin collector

https://github.com/EOSIO/fc/pull/204


Upgrade to lit 2

Upgraded to Lit 2. Note that<EMAIL_ADDRESS>is where Lit 2 support was added.
Also it seems that the react workspace build-storybook command stopped working because it was missing @babel/preset-typescript
Fixes #32

Just ran prettier!

odd.
All matched files use Prettier code style!
✨  Done in 0.71s.

Any idea what is going wrong?

hmm... Probably my workflow file is doing something wrong. I'll merge anyway.
Thanks!

Cheers! Let me know if anything else is needed to prepare for any releases


Some improvements to AirGradient-DIY.ino

use preprocessor variable to reduce binary size
add optional display
reduce sensor polling due to global caching
auto update values on display if forced update from webserver occured
independend sensor update and display change intervall
fix time problem between displayed values intervalls on display due to disabled sensors

I like the overall idea behind this PR, but I don't have time right now to review it (just to set expectations for a timeline); would love to hear others' thoughts too.

I find this approach quite magnificent ;)
It also workes fine as tested in the last two weeks

I have made some improvements in the code, but have come across a question:
What should we do with missing values or error messages from sensors?

We send the previous successful value
We send nothing and leave the sensor out of the message

I have roughly implemented the first suggestion, but I think the right way would be the second approach.
Any thoughts?

I kind of like both... though reporting the previous successful value can lead to people not knowing there's a problem.

I had the same problem as described in issue #24 and solved it by simply returning the last value if an error occurred during the transfer. There should be error handling, of course.
My second suggestion has the drawback that it also shows the wrong value on the display or omits the sensor altogether because only the last value is stored.

I have an issue with this and previous versions and the problem isn't in your code but your code treats it as an error.
My PM2.5 sensor often reads 0, which in the code is used as an error condition. But what if the proper PM2.5 reading is actually 0? My air particulates count does seem very low most of the time - it hovers between 0 and 2 a lot of the time unless I cook something. I do see it go up when I've been cooking so I'm confident that the sensor is working.
It's actually the AirGradient.cpp code that uses 0 as an error value:
int AirGradient::getPM2_Raw(){
  int pm02;
  DATA data;
  requestRead();
  if (readUntil(data)) {
    pm02 = data.PM_AE_UG_2_5;
    return pm02;
  } else {
    return 0;
  }
}

But this code doesn't differentiate between a real 0 value and an error.
The result, for me, is that for large chunks of the day my PM2.5 sensors are appearing broken.

Hello @floyduk,
yeah thats a serious concern for me too. But to think about it. Does the particular sensor really works if it displays 0?
This is a flaw in the implementation of the AirGradient which I want to improve for quite some time. They treat an error of the sensor with the value 0, which makes sense, because the sensor isn't counting any particles.
Like @geerlingguy mentions the error of the sensor should be obvious to the user.
One way to tackle the problem would be to teach grafana or prometheus to handle missing values as 0. Another approach would be to modify the sketch and the lib beneath to your need.
Would love to see a PR on this matter.

I think there is a difference between a 0 and an error. If you look through the AirGradient library code you can see that it's running a loop that checks for a result and if it isn't able to get a reading within and allotted time then it returns a 0. If only they'd made that error return a -1 instead then we could distinguish an error from a 0 value.
I included the getPM2_Raw() code above. Here's the ReadUntil() code that it calls:
bool AirGradient::readUntil(DATA& data, uint16_t timeout)
{
  _data = &data;
  uint32_t start = millis();
  do
  {
    loop();
    if (_PMSstatus == STATUS_OK) break;
  } while (millis() - start < timeout);

  return _PMSstatus == STATUS_OK;
}

As you can see this returns a true/false indicating whether it was able to get a reading. I won't bother including the loop() code because it's long but you can read it all on their github here: https://github.com/airgradienthq/arduino/blob/master/AirGradient.cpp

Don't get me wrong. I'm totally on the same page with you. But AirGradient already made this Design choice and I can't do anything about it. It's always a pain in the a** if you want to change existing and used interfaces. On top of that they apperently don't accept PR anymore. This whole library has many problems which is the reason I wan't to move away from this project compleatly. If you want to make a PR on top of my PR, feel free do do so. I'm happy and willing to review it and merge it if possible.

Yeah that's fair. If I knew how to actually use the AirGradient code to compile it and then use it in the sketch then I might just do that but sadly I don't know how. I appreciate you doing as much as you have with the project. I think, given that AirGradient's library has this bug, I would modify your code simply to stop treating a 0 result as an error. In fact that's what I've done in my copy of it that is running on my air quality monitors.

I was just looking for the option to disable display, I don't thin it's required with prometheus in place

You could just unplug the display. It would have the same outcome. My approach uses the uC a little bit more efficient and exclude unused code.

Yeah I like it!
I think this is more common approach in embedded electronics

I guess since there is little to no movement, that there is no interesst in merging this request at all?


CSHARP-2305: Support strings as value for $numberInt.

I did read the spec... I just didn't see the quotes around the values!

OK, I should read the spec... :)


cannot import name cwt_morlet

I am trying to run code from someone's github install that calls:
from mne.time_frequency.tfr import cwt_morlet
However I get the error
ImportError: cannot import name cwt_morlet
I looked through the folder and found that in time_frequency there was a tfr.py, but no mention of cwt_morlet.
I thought it could have been due to an update in mne and looked through mne- 0.12 and mne -0.14 but haven't seen a change in the tfr file compared to 0.15.  Has anyone encountered this error before?

From whats_new for 0.13 here:
- Deprecated mne.time_frequency.cwt_morlet and mne.time_frequency.single_trial_power in favour of mne.time_frequency.tfr_morlet() with parameter average=False, by Jean-Remi King and Alex Gramfort

Does that help? FWIW we are on version 0.15 now, so there might be other relevant changes. You can look here for publicly available/supported functions:
https://martinos.org/mne/stable/python_reference.html

Thank you!


Fix extension path

Per #59.
There's two commits here - first is a quick fix to change the "publisher.package" string that was broken by the package name change.
Second commit caches the extension's path from activation. Decouples from the name of the extension (and saves all those calls to getExtension()), though I don't really like having a globalish like that.
Looking at all the uses, it shouldn't be too much work to refactor to pass the extension context through to where it's needed. I don't mind looking at that if commit 2 isn't palatable, but at least the first commit should fix the problem for now!
Cheers

I think this is fine. It's essentially a global when pulled out of the extension manager as well.
And we have worse globals in extension.ts, which will need to be made builddir specific once there's workspace folder/multi build config support ;)

I think this is fine. It's essentially a global when pulled out of the extension manager as well.

Except it does call getExtension() every time it wants the path, so feels a bit less unpleasant in that regard to me...

And we have worse globals in extension.ts, which will need to be made builddir specific once there's workspace folder/multi build config support ;)

Is this something that is being worked on? I have something that I was going to polish up when I get some time, but if it's being worked on elsewhere then I guess there's no need!
Thanks

It's something I noticed you referenced in your PR :P
I may look into the folders, but mostly to have one workspace for meson stuff and another for javascript. Not multiple meson instances.

OK cool, I'll plod on with it when I get some time then.

I think this is fine in terms of "let's unbreak things" even if it isn't The Perfect™ solution. I really should have done some testing after I discovered that you can't have two extensions with the same name but different publishers (which is so strange!)


how to get confidence score of each word using Attn

I dont want to calculate distance with gt. i want the confidence score for read word by Attn. Like suppose if  word read by attn is "hello" and is confidence is 99% or something so that i could discard non english or junk character or word. @ku21fan @YacobBY please help.

@ku21fan Can you check if it is possible?

Hello,
Sorry for the late reply.
I just commit codes about confidence scores.
Please check and test recent version~ (test.py and demo.py)
P.S. Recent code may occur error in F.grid_sample(~~, align_corners=True)
because the attribute align_corners of F.grid_sample is introduced in PyTorch 1.3.0.
So you may need to remove , align_corners=True in here or upgrade PyTorch to 1.3.0
Best


[1.8.x] Renamed RemovedInDjango20Warning to RemovedInDjango110Warning.

Regarding master, what do you have in mind? Cherry pick this commit onto master and solve conflict?

https://gist.github.com/14aa71293c2cf2d918e8

Yes for master (+add renames for 21Warning)


support Java

Hello!

Vote on this issue by adding a 👍 reaction
If you want to implement this feature, comment to let us know (we'll work with you on design, scheduling, etc.)

Issue details

Add Java support
Affected area/feature

Hi @daleiz
We actually do have Java support for this provider :) https://mvnrepository.com/artifact/com.pulumi/oci
Please let us know if this isn't working and we can investigate it
Paul


Add child_process streams

Adds a new pair of parent / child streams for use with Node.js child_process processes. The design of the streams closely follows the state of the art in this package, and they are also based on BasePostMessageStream. The most notable differences are that:

The data received by _onMessage is not a MessageEvent, but what other streams would receive as MessageEvent.data.
The "message" / transport mechanism is globalThis.process.send and globalThis.process.on('message', ...).

As part of these PRs, the tests in this package are updated to follow patterns in other repositories, and coverage is increased to 100%. All istanbul ignore directives have been removed.

@FrederikBolding should approve these changes himself before this PR is merged.


add support for @solidjs/meta ^0.29.0 peer dep

solid-start 0.3.8 does not allow for @solidjs/meta ^0.29.0 peer dep.

v0.29.x actually doesn't work with SolidStart currently. I can update SolidStart but then everyone would need to 0.29

I did.. see v0.3.9.. keep in mind it needs Solid 1.8.4 or later.


Improve performance when swiping to left & to the right.

@duyluonglc I see on the iOS simulator, when swiping in either direction, sometimes I see blank screens. It looks to me like this is because we are using the onMomentumScrollEnd and setState to set the current date.
I think we might be able to achieve the same result without using setState and instead have VirtualizedList 'ask' for the items we wish to render for the given day/index in the calendar.
What do you think @duyluonglc ?

sorry @joshyhargreaves I'm too busy with projects. I saw the delay issue, and sometime it shows blank screen. But have no solution. Let try your way and let me know result

I will do @duyluonglc!

Going to be having a look at this over the weekend!

hi, it seems the date is still changing slowly when the event list is shifted left & right


Add GitHub Action for Linting, Building, and Testing

Create a GitHub Action that performs the following tasks:

Runs linters in the ./workspaces/calendar-widgets directory using the command pnpm run lint
Builds the code in the ./workspaces/calendar-widgets directory using the command pnpm run build
Runs the test suites in the ./workspaces/tests directory using the command pnpm run test

This action will ensure that the code in the calendar-widgets workspace is properly linted, built, and tested before being deployed.

This was tricky for alot of reasons. We had the usual troubles with working with Mono repos, this required updated the root package.json to utilize the workspaces property. So we now "officially" are using workspaces.
Another issue I encountered was needing to use a specific node version instead of the default version, pnpm requires atleast v16
More fun, the workspaces/tests directory won't place nice with the Github Action environment because it's installing calendar-widgets via relative pathing. To resolve this we had to install around that directory.
- name: Install dependencies
        run: pnpm install --recursive --filter '.../!tests'

The next step was to run the following scripts in the workspaces/calendar-workspaces directory: pnpm run build and pnpm run lint. What's interesting is when I went to test the ESLint action, it was running successfully and passing the build... when it shouldn't be 🙄 I had intentionally set some errors that were failing on my local but they weren't catching in the build. This was the action:
# ...

- name: Install dependencies
        run: pnpm install --recursive --filter '.../!tests'

# ...

- name: Lint calendar-widgets
        working-directory: ./workspaces/calendar-widgets
        run: pnpx eslint --debug './src/**/*.{ts,tsx}' -c .eslintrc.cjs

Turns out, ESLint needed to be installed independently in the dependencies 🤷
- name: Install dependencies
     run: |
          pnpm install --recursive --filter '.../!tests'
          cd workspaces/calendar-widgets
          pnpm install --save-dev eslint


Performance Improvements with Database Indexes

Readiness checklist

[ ] I added/updated unit tests.
[ ] I added/updated integration tests.
[X] I ensured that the PR title is good enough for the changelog.
[X] I labeled the PR.

I just changed the label to "enhancement". Even though it's nothing the user can "see", it's still something that they can "feel". :)


Change game size in resize event not working

Phaser Version:
3.24.0

Description
I try to handler resize browser by scale.on('resize') event and i will change size of game like
create ()
{
    this.scale.on('resize', this.resize, this)
}
resize(gameSize, baseSize, displaySize, resolution) {
   this.scale.setGameSize(window.innerWidth, window.innerHeight)
}
But i get error when i resize browser
VM15 phaser.min.js:1 Uncaught RangeError: Maximum call stack size exceeded
    at initialize.onResize (VM15 phaser.min.js:1)
    at initialize.o.emit
   ...
Example Test Code
https://jsfiddle.net/3gsaj7ot/

There's no need to call setGameSize as it has already been updated to the new size by this point, plus it's causing the error, because invoking it launches the resize event, which invokes it again, etc. The only thing you're likely to need to do in your resize handle is to change the camera sizes this.cameras.resize(), and any other custom logic your game needs.


Toolbar icons are not clickable

Current Behaviour
Toolbar text and surrounding area is clickable but toolbar icon is not clickable

Expected Behaviour
toolbar icon is clickable
Your Environment

Include details about the environment you experienced the problem - this will help us fix the bug quicker.

Data Curator version: 0.12.0
Operating System and version:  macOS High Sierra 10.13.3

Fixed 🎉


Add README-Travis.md

This PR adds README-Travis.md.
README-Travis.md documents what is happening with Travis and Cirrus.

Thanks for the suggestions @noloader. The comments don't really apply any more and I feel that with the build instructions in #89 everything is a bit easier to follow and no separate document is needed. Also, I don't think me or my colleagues will think of updating the markdown file if build instructions are changed, thereby creating instant legacy. Your efforts are of course very much appreciated and I made sure to mention you contributions in .cirrus.yml.


Refactor/#54

revoke access token on logout, closes #54

fix lines 61 - 65 in payments.server.controller.js then rebase and pull again. otherwise looks good


[WIP] Use heap in priority queue implementation

NOTE: If swap() turn out to be a hot spot, consider replacing with simple copy assignment and directly copy inserted element at the end when position is known.

I wouldn't assume the priority queue implementation in the test.

I am not assuming the implementation here.    I got rid of all the calls to swap, traded them for copy assignments and delayed copy of the element that was swapped with others to the end when we know its final new position.

Summitdev, GCC 5.4.0, 100M values, 1M queries

What
master
#392
04ad43b
de7dc2a

Serial
1
.941
.927
.887

OpenMP 1
1
.949
.927
.888

OpenMP 2
1
.951
.929
.889

OpenMP 4
1
.947
.929
.892

OpenMP 8
1
.950
.939
.899

OpenMP 16
1
.963
.952
.907

CUDA
1
1.163
1.150
1.117

Raw data (On the bottom)

Further optimizations and general algorithm improvement may be possible by using the fact that we are not inserting random values. Lets look at the actual piece of code that uses push and pop.
 while ( !queue.empty() && count < k )
    {
        // get the node that is on top of the priority list (i.e. is the
        // closest to the query point)
        Node const *node = queue.top().first;
        double const node_distance = queue.top().second;
        // NOTE: it would be nice to be able to do something like
        // tie( node, node_distance = queue.top();
        queue.pop();
        if ( TreeTraversal<DeviceType>::isLeaf( bvh, node ) )
        {
            insert( TreeTraversal<DeviceType>::getIndex( bvh, node ),
                    node_distance );
            count++;
        }
        else
        {
            // insert children of the node in the priority list
            for ( Node const *child :
                  {node->children.first, node->children.second} )
            {
                double const child_distance = distance( child );
                queue.push( child, child_distance );
            }
        }
}

We see that in many situation pop is immediately followed by two pushes of children. Now consider a situation when a distance to the child (child_distance) is larger than the distance to parent (node_distance). In this case, one can replace pop and push with a single pop_push which replaces the top element with the child.
In general, we have a pop_push2 kind of thing, and there potentially may be multiple optimizations depending on how distance to the parent compares to distances of children. But even the above simple approach should provide speedup.

Didn't mean to close the PR...  @aprokop This may be beneficial on the CPU but we see that all our attempts to optimize have led to execution divergence which kills us on the GPU.  You are welcome to piggyback on this PR if you want to experiment some changes.

Based on this we see some significant algorithmic differences between the hardware types - which makes sense. Are we planning on specializing some of these operations on the Device type so we can choose the best algorithm for the hardware?

@dalg24 You would probably get execution divergence in priority queue anyway.

Another question about the whole test: the driver populates the source with random points, and then searches for those points. Isn't that a problem on the device that randomness means that queries are not physically local, and thus we almost immediately hit divergence on GPUs? The ideal case for BVH is probably sorting the queries by location before searching. Maybe the driver needs to be updated for that use case, otherwise we never see performance improvements.

What about an option in the driver to spatially sort or leave as random? I would actually like to see what the difference is.

@hydroo Need more comments in pop_push, describing the relationship of putting new element at the end of the heap and its relationship with push.

Ready for review

I would still like to see the update to the driver that searches for spatially local points to demonstrate the performance on GPUs. I understand that it can be done in a separate PR.

Here is what I measure on the dgx station (that has Volta GPUs) with --values=100000000 and  --queries=10000000

timing\version
current master (d0cdca0)
current version of this PR rebased on master (8edc76a)

construction
21.609
21.4668

kNN
7.96706
3.49588

radius
3.35762
3.39032

On Kepler with --values=10000000 --queries=100000 (i.e. 10X less values and 10X less queries because we ran out of memory)

timing\version
current master (d0cdca0)
current version of this PR rebased on master (8edc76a)

construction
1.17461
1.17597

kNN
3.2622
1.6589

radius
2.11633
2.11624

@dalg24 In your experiments, did you run it multiple times? If yes, what's the variation in times?

@dalg24 Any idea why it is so much different from my measurements.
Your measurements are on GPU, right?
Could you do CPU measurements, too?

@dalg24 In your experiments, did you run it multiple times? If yes, what's the variation in times?

couple times, variation was of the order of what you see in the table for "construction' and "radius"

@dalg24 Any idea why it is so much different from my measurements.

No

Your measurements are on GPU, right?

Yes

Could you do CPU measurements, too?

OpenMP timing are not as stable when I work in containers but I guess I could try.

Summitdev, Pascal, 10M values, 100k Queries

timing/version
d0cdca0 KNN
8edc76a KNN
normalized

Serial
1.277
.948
.74

OpenMP 1
1.276
.947
.74

OpenMP 2
.665
.489
.74

OpenMP 4
.324
.242
.75

OpenMP 8
.164
.124
.76

OpenMP 16
.087
.066
.76

CUDA
.119
.047
.39

Can confirm @dalg24 's results.
I had -g in the build, but it shouldn't influence CUDA performance.
Who knows.
Congratz on the great speedup!


Plugging mixin test fails sporadically

Describe the bug
When you run your tests, sometimes you will get all tests passing successfully but sometimes you will see the following error popping out:
❌ PluggingElement > add custom plugin dialog > adds a new editor kind plugin on add button click
      AssertionError: expected [ Array(9) ] to have a length of 10 but got 9
      + expected - actual

      -9
      +10

      at o.<anonymous> (test/unit/Plugging.test.ts:146:38)

To Reproduce
Steps to reproduce the behavior:

Run npm test
Cross fingers
See error

Expected behavior
All tests should pass consistently

This might has to do with clearing the local storage.

@juancho0202 did you notice this error occuring on Open-SCD? If so, it should be moved there. If this behavior only happend in Compas-Open-SCD this ticket can be closed.
Since we moved to a mono-repo structure the Plugging test will no longer be run in Compas, as this has already been tested within Open-SCD and will remain in that package. Only the Compas package will be tested in Compas-Open-SCD.


Invalid example in the YAML snippet - xmlTransformationRules

YAML snippet is badly formed, and references invalid predefined variables for CI/CD pipelines:

#xmlTransformationRules: '-transform **\*.Release.config -xml **\*.config-transform **\*.$(Release.EnvironmentName).config -xml **\*.config' # Optional

xmlTransformationRules is a multiline input, there's no break between the two commands listed in this example.
$(Release.EnvironmentName) isn't available in CI/CD pipelines, only in the classic Release pipelines. Should be $(Environment.Name) or $(System.StageName)

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

ID: 064f48ba-1c34-6422-5fe3-c3e88d2803c4
Version Independent ID: c38f5761-4718-9aae-bc83-063257a78eb3
Content: File Transform task - Azure Pipelines
Content Source: docs/pipelines/tasks/utility/file-transform.md
Product: devops
Technology: devops-cicd-tasks
GitHub Login: @RoopeshNair
Microsoft Alias: ronai

@Zhaph Thank you for the feedback, please consider becoming a contributor.
The documentation has been updated and is pending review.


Provide validation for identityId with Azure pod identity in TriggerAuthentication

Provide validation for identityId with Azure pod identity in TriggerAuthentication.
I've seen a scenario where an empty application ID was specified and it was not blocked, most probably because we see it as the default?

Empty value is the default value, so we don't have any good way to difference between empty by error or just not provided.
Which is the scenario that you want to avoid? I mean, if a user provides an empty clientID, the default clientID will be used. We could validate the input checking if it's a GUID or not, but I'm not sure if that's useful either

Can we distinguish empty from nil? Imagine someone wants to use identityId but the automation/configuration contains a bug and causes to pass an empty ID instead it will pas (ie tokenization failure, etc).

I'm not totally sure if we can, because an empty string isn't nil, is ""

Well that is my question actually, can we use nil as the default value instead of ""? Because if we can, that means we can provide validation and block creation of resources where "" was specified.

Currently, the default value is "" and not nil. We'd need to modify the code to use pointers as part of the validation process changes

That sounds like a viable thing to do allowing us to validate the input, what do you think?
It's just an idea, I don't want to push this though :)

I think that we can give a try

Let's see if I can do this :)

@SpiritZhou is working on this

Thanks @SpiritZhou !


WIP: 1254 animation example enhancements

This PR

adds an animation section to the examples
moves two existing animation examples to this section
adds 5 new examples for

animating over a date range
animating the width of features
adding visibility to background features
holding animated features
animating a filtered subset of data

I'll have a look at this tomorrow @makella
It would be great if we could have it deployed at this at staging. I have just pushed the branch to the cdn, so you can now deploy the doc from dev-center side, if you're fine with it.

I did some minor changes regarding code styling and I I uploaded to staging here http://test-release-1-2.developers.carto-staging.com/developers/carto-vl/examples/

thank you!!


Apps by category

I want to get list of apps of a specific category, is it possible?

Yes, you just have to filter the list:
List<Application> list = await DeviceApps.getInstalledApplications();
list.where((Application app) => app.category == ApplicationCategory.video);

@g123k I cannot find Finance category, can you please tell, is it possible to fetch that?

@yashwp No, the categories are provided by Android

after this line
list.where((Application app) => app.category == ApplicationCategory.video);
the data be like
(Application{appName: Tic Tac Toe, apkFilePath: /data/app/~~ScMRDLOHYNRAv6IXFZCnUQ==/com.anmolsethi.tictactoe-XdTuB6HbZg2wWXNvn2watA==/base.apk, packageName: com.anmolsethi.tictactoe, versionName: 2.0.2mp, versionCode: 10, dataDir: /data/user/0/com.anmolsethi.tictactoe, systemApp: false, installTimeMillis:<PHONE_NUMBER>006, updateTimeMillis:<PHONE_NUMBER>006, category: ApplicationCategory.game, enabled: true})
which seems inaccessible how can we handle this small brackets("(") and how can we access data from the object
e.g:  i like to access appName from this object


Mobile (Firefox Nightly for Android)

Hi,
your extension is brilliant. But as far as I see unfortunately only for desktop so far.
Is there a way to make it work for Firefox Nightly Android?
Best
Stefan

@sk365
Try out Kiwi Browser which supports chrome extensions -
https://github.com/kiwibrowser/src.next/releases

Hm, it seems the latest release includes support (?) for the Firefox Android nightly. Anyone tried this and can comment here?

I installed Firefox Nightly (version below) on my GS21Ultra running Android 12, and followed the instructions for creating an add-on collection and configuring FF nightly to use it, however the list of supported extensions is only 17, and does not include markdownload. Is there some way to sideload this extension?
Firefox Nightly 102.0a1 (Build #2015881995), 2ace91321+
AC: 102.0.20220522143114, edac10adc1
GV: 102.0a1-20220522094633
AS: 93.1.0

I was able to get this working with Firefox Nightly following the instructions to add a collection. In the Markdownload settings I did need to change the Download Mode to Context Link. Downloading of files would not work with the Downloads API.
106.0a1 (Build #2015903211), 3d5c6b96b+
AC: 106.0.20220909143109, a6a635eae3
GV: 106.0a1-20220909093917
AS: 94.1.0

@sk365 Try out Kiwi Browser which supports chrome extensions. I have tried it myself and markdownload works great in it. https://github.com/kiwibrowser/src.next/releases

Hi, can Kiwi Browser really download the markdown file?
I tried Kiwi browser and the extension, it indeed pop out a download window (like in the desktop), but when I click download, it does nothing ...
Is it normal on your side?
I installed Kiwi browser from Google Play store. Is it different from the link you provided?

Hi, @junnunkarim can Kiwi Browser really download the markdown file? I tried Kiwi browser and the extension, it indeed pop out a download window (like in the desktop), but when I click download, it does nothing ...
Is it normal on your side?
I installed Kiwi browser from Google Play store. Is it different from the link you provided?

Hello there @NianzuMa
It is probable that markdownload is not working for you because your kiwi browser doesn't have the permission to download files,
You can either try to change the permission settings or try to download something else using kiwi browser. After that try out markdownload again.
But recently I have stopped using kiwi (I mostly use bromite), so I use a different app called Markdownr to convert webpage to markdown and It works great.
Hope this helps.

I'm also a user of markdownr, but I've now tested this add-on.
It works pretty well so far, thanks for providing it. 😄
What doesn't work, however, is embedding images as base64.
Is there a limitation regarding the mobile API of Firefox/Fennec or is there a solution?


Change node engines to use version node v16

CI azure static web apps fails when try to build angular/react applications using a node version higher than node v16
Local error:

Github actions

I'll suggest forcing the node version to avoid issues when deploying the web app in the Azure portal
Switching between different versions and it works!

@microsoft-github-policy-service agree


Add a benchmark suite for NerdDice

Use the benchmark tool to run benchmarking reports for the gem so that you know if you introduce a feature that significantly degrades performance. Could be run from the gem's home folder with bin/run_benchmarks and saved to a .gitignored folder.

Completed by #29