add express-redis cache

https://www.npmjs.com/package/express-redis-cache

[ ] cache default page links
[ ] cache direct links that use identifier and claim
[ ] maybe cache links to vanity urls

I converted to an epic and created an issue to scope out the individual tasks.


measure and layout after adding a view to the container

Imported from https://github.com/facebook/react-native/pull/18609
Currently, when adding views to ViewPagerAndroid after it was attached, those views would not show up as they had a size of 0. This fixes that by measuring and layouting after adding a view to the container.
Fixes https://github.com/facebook/react-native/issues/14296
Test Plan
See https://github.com/danilobuerger/react-native-viewpagerandroid-dynamic

yarn install
yarn run android
You will see two pages
Press "ADDPAGE"
Scroll to the third page, it will be empty
Use react-native master with this patch
yarn run android
You will see two pages
Press "ADDPAGE"
Scroll to the third page, it will show "3 page (Scroll Me)"

Thanks ❤

Awesome! Will merge this after making the first release. After that, we can add your Add Page button to the example here too :)

@ferrannp Thanks! Could you also cut a new release with this fix please? I guess this repo won't have much activity for the first few weeks until people start migrating, so it would be nice if its already there.

Yup, thank you!

@ferrannp Awesome, thanks!


Is there a place we can see and share results for each game?

Hi all,
I have been played around several games implemented here, training Connect4 in particular for the last 36 hours.
I'm looking to improve some of the implementations, however, I'm not able to find existing results.
Without a measuring stick, I'm struggling to understand my changes help or hurt the model.

Is there a place where people can share the results? I would love to contribute mine.
I also want to understand how it is performing compared to other models or published results in the paper

I wonder how many played games will it take for model to achieve good or super human performance

Ya I am wondering the same thing. I am just running the default config to train Connect4, but even after 70000 training steps, it still plays like trash. Can't even stop me from achieving connect 4 in the first 4 moves.


Statistics: monitor CollectAzureCdnLogs

If blobs are not being copied over by CollectAzureCdnLogs (either global or China), we should be alerted about it.

was done


Publish the gRPC beta package for PHP

grpc repo helloworld and route guide code examples and readme have been updated with latest beta API changes
grpc.io website PHP route guide tutorial has been updated
Packagist have been updated: https://packagist.org/packages/grpc/grpc#dev-release-0_11
Pecl have been updated: https://pecl.php.net/package/gRPC/0.6.0


Are you still accepting PR's?

Are you still accepting PR's and maintaining this repo? If you're short on time I would be happy to help you.

Hey there. I'm still accepting PRs but I've been pressed for time of late and have been slacking. Sorry. I'm hoping to clean up the existing ones in the coming weeks. Thanks for offering to help. Let me blow through the existing PRs and I'll get back to you.

Agree with that.
Seems it's an active docs, keep updating it or looking help from some collaborators and maintainers.


automation bug, when using ufw log and not checking with database

When running the -A option, it'll grab all files ending in .ip which is fine, but it means the ufw log files won't be checked against the database.

No longer an issue, added a conditional to deal with the query


Add C solutions to 104-max-depth-of-binary-tree, 110-check-for-balanced-binary-tree, 226-invert-binary-tree & 543-diameter-of-binary-tree.

File(s) Modified: 104-max-depth-of-binary-tree.c, 110-check-for-balanced-binary-tree.c, 226-invert-binary-tree.c, 543-diameter-of-binary-tree.c
Language(s) Used: C
Submission URL: https://leetcode.com/submissions/detail/779191189/, https://leetcode.com/submissions/detail/779182742/, https://leetcode.com/submissions/detail/779192677/, https://leetcode.com/submissions/detail/779194274/

Thanks, @ThBlitz and welcome to contributing on GitHub. The PR template is the default text that pops up when you create a PR this lets you change certain fields rather than rewriting the whole text, I've edited your comment to show you what that normally looks like.

It's worth noting that for this repo you don't need to include your own implementation of the Tree or Sort code leetcode provides and can add your solution exactly the way you wrote it on leetcode.

Thanks again for contributing!

Thank You ! @Ahmad-A0


#question empty arrays

when i try to get map object (since 10 minutes) it returns me empty arrays like that
Array[0]
current_timestamp_ms
:
1472072601297
decimated_spawn_points
:
Array[0]
deleted_objects
:
Array[0]
fort_summaries
:
Array[0]
forts
:
Array[0]
is_truncated_list
:
false
nearby_pokemons
:
Array[0]
s2_cell_id
:
"9926595584582483968"
spawn_points
:
Array[0]
wild_pokemons
:
Array[0]
__proto__
:
ProtoBuf.Builder.Builder.Message

do you know why?

It's working fine for me currently.
Apparently there was an issue with the servers just recently that caused them to always return empty responses, including in the actual app.

yes ty it works fine now, im afraid cause theyll update api soon, will you keep it up to date?

Generally yes, we try to keep pogobuf up to date with any API changes as quickly as possible.


GUI the 'all'  tab doesn't show environment variables that are declared in separate configs

Describe the issue
If a property is declared in a config .property file, it doesn't show under the 'all' tab in the GUI
Reporter
Tarik

To Reproduce
Steps to reproduce the behavior:
Go to Tibet2 TST https://srtzzapp0493.insim.biz/ija_tibet2 and look in the environment variable tab for 'main'
look for the property: esb_rr_url_ssl where you see  a value
now look for the same property in the 'all' tab where it says no value
Screenshots
In the main tab

In the all tab

This was tested with iaf version 7.6 but is also the case in every earlier version

'All' suggest that 'all' variables are shown, whereas this only displays the variables defined on the highest level.
Maybe 'Global' is a better label

If I remember correctly ALL used to contain all and not just the global properties

Rename All to Global


Improvement in navbar adding logo( name of project in navbar  )

The issue involves an improvement to the existing navigation bar by adding a logo that includes the name of the project. This enhancement aims to increase brand recognition and improve the aesthetic appeal of the website or application. The task would include designing a suitable logo that aligns with the project's branding guidelines, integrating the logo into the navbar in a way that is visually appealing and functional across different devices and screen sizes, and ensuring that the logo is properly linked to the homepage for easy navigation.

@Adeesh-bode thanx for your idea , but unfortunately, I withdraw this project from GirlScript Summer of code . It will be removed within few days


Typo in Documentation

https://reactnavigation.org/blog/2020/05/16/web-support/
It has typo under Permanent Drawer section:
Current:
Another way we can make maximum us of the available screen size is by making our
Changes:
Another way we can make maximum use of the available screen size by making our
Please assign this issue to me.

Do it


[UWP] Is here have a better way to get the image bytes or stream?

            var tcs = new TaskCompletionSource<byte[]>();
            await ImageService.Instance.LoadUrl(url).Success(async (imageInformation, loadingResult) =>
            {
                var temp = await Task.Run(() => File.ReadAllBytes(imageInformation.FilePath));
                tcs.SetResult(temp);
            }).DownloadOnlyAsync();
            var bytes = await tcs.Task;

It is works for me, but it write and read the disk.
Is here something like ImageService.Instance.LoadUrl(url).GetBytesAsync() or ImageService.Instance.LoadUrl(url).GetStreamAsync()?

The best is:
var stream = await ImageService.Instance.LoadUrl("http://example.org/test.png")
 .DownSampleInDIP(width: 200)
 .Transform(new CircleTransformation())
 .AsPNGStreamAsync(); // or AsJPGStreamAsync

Sorry, i missed that it's not implemented on UWP yet, I'll implement it soon. Instead try this:
            var tcs = new TaskCompletionSource<byte[]>();
            await ImageService.Instance.LoadUrl(url)..WithCache(Cache.CacheType.Memory).Success(async (imageInformation, loadingResult) =>
            {
                var temp = await Task.Run(() => File.ReadAllBytes(imageInformation.FilePath));
                tcs.SetResult(temp);
            }).DownloadOnlyAsync();
            var bytes = await tcs.Task;

Done


Example not working

Go version: 1.20.2 linux/amd64
Go-SDL2 version: 0.4.34
SDL2 version: 2.26.5-1
OS: Linux arch 6.1.12-arch1-1
Architecture: x86_64
Steps

git clone 'https://github.com/veandco/go-sdl2-examples'
cd examples/audio_wav_memory
go mod init example
go mod tidy
go run ./audio_wav_memory.go

Expected behavior
Hearing the audio, then the program would exit.
Actual behavior
The program just freezes. Nothing happens, no audio is playing, the program doesn't exit, no errors are shown.

Hi @pro-anon, thanks for reporting this issue! Could you help me identify where it is stuck? Perhaps by putting some log.Println() lines in-between the SDL2 functions. I wonder if it is stuck at the chunk.Play() line as it is the only one without error checking.

At the beginning of the main function
func main() {
	log.Println("Start main function")
	...
}

Nothing gets printed.
Maybe it's an issue that happens when importing before the main function?

Hi @pro-anon, could you try running go build instead of go run then run the executable? I wonder if it's simply compiling for the first time which does take some time.

You're correct. After some time, it worked. Thanks!

@veeableful - it does seem to take quite a while to compile for the first time - do you know why it takes so long/is there any way to optimize this?

Hi @thatnerdjosh, it needs to compile the go-sdl2 binding first before compiling the example.


PowerShell task uses ps profile that lacks some modules (like PowerShellGet)

How to reproduce:

Create test.ps1 with Get-Module -ListAvailable content (via sources or via command line task powershell -c Set-Content test.ps1 'Get-Module -ListAvailable')
Run it from command line task powershell -c test.ps1
Run it from PowerShell task test.ps1
Observe different folders and different sets of modules available

Difference in my case
Module folders available from command line's powershell:

C:\Users\sbuilder\Documents\WindowsPowerShell\Modules
C:\Program Files\WindowsPowerShell\Modules
C:\Windows\system32\WindowsPowerShell\v1.0\Modules

Module folders available from PowerShell task:

C:\Windows\system32\WindowsPowerShell\v1.0\Modules
C:\Program Files (x86)\Microsoft SDKs\Azure\PowerShell\ServiceManagement
D:\builds\agent\worker\Modules

Most probably it was caused by special config used by PowerShell task.
Effects
This issue makes usage inconsistent and forces to avoid PowerShell task at all costs, as it is not possible to install modules there, use already installed modules, etc.

It actually runs with -NoProfile and uses the PSModulePath environment variable so any modules defined in paths referenced in the users or systems PSModulePath environment variable should be useable.

Buy why it uses -NoProfile? User anyway will use command line task to run single powershell commands with powershell.exe which utilizes current user profile.
Also, it makes setup less flexible: instead of configuring builder powershell profile administrator will have to add all folders to PSModulePath.
Anyway, thanks a lot for reply, now I know how to work around this issue.

Not setting -noprofile is something I'd like to expose it as an advanced option. I need to prioritize it and talk it over with @chrisrpatterson

Something else is going on here not caused by the presence of the -noprofile switch. I've got a repro and trying to figure out what is going on.

Regardless of any switches (noprofile or otherwise) passed to powershell.exe, it appears that powershell.exe itself overrides the PSModulePath if it hasn't been overridden at the process level.
Because the agent adds it's own PS module directory to the process-level PSModulePath env var, it's interfering with the override behavior of PowerShell.exe.
I don't think any of the agent's modules can be loaded by ad-hoc scripts anyway. Perhaps the best thing here is for the agent to stay out of the way and not touch the PSModulePath before invoking ad-hoc powershell scripts.
I need to talk this over with my program manager and think on this a bit.

the psmodulepath issue was fixed recently.


Update netty-tcnative-classes to 2.0.58.Final

Updates io.netty:netty-tcnative-classes from 2.0.57.Final to 2.0.58.Final.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.netty", artifactId = "netty-tcnative-classes" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "io.netty", artifactId = "netty-tcnative-classes" }
}]

labels: library-update, commit-count:1

Superseded by #239.


DartPad fails:  Error compiling to JavaScript:Method not found: 'FallThroughError'.

This Dartpad example which targets the master channel worked about a week ago: https://dartpad.dev/?id=34adb8b46d34c933751bf8b21d06686f&channel=master. Now it fails with:
Error compiling to JavaScript:
local_pub_cache/hosted/pub.dev/cloud_firestore_web-3.1.1/lib/src/utils/web_utils.dart:71:13: Error: Method not found: 'FallThroughError'.
      throw FallThroughError();
            ^^^^^^^^^^^^^^^^

Re-filed as https://github.com/dart-lang/dart-pad/issues/2434


Upgrade zlib-rs to 0.3.0 to get multiple bugfixes

Fixes at least these correctness issues:
https://github.com/memorysafety/zlib-rs/pull/165
https://github.com/memorysafety/zlib-rs/issues/169
https://github.com/memorysafety/zlib-rs/issues/172
And possibly others.

I believe the merge commit would have PR description as the commit message anyway. But sure, done.

I assume @Byron will bump it as part of the usual release process. If not, I'm happy to increment that number, sure.

Actually, changing the version number will make a release more straightforward. It's a bit like being a genie, limitless power, but impossible to use for yourself :D.

Version bumped


Make whls manylinux2010 compatible

Currently our manylinux1 packages are breaking spec. This is the same issue for TensorFlow core and many other pip packages with C++ linking. Creating this issue to track the problem and we'll make the switch once the new BUILD toolchain is finalized.
Tracking:
https://groups.google.com/a/tensorflow.org/forum/#!topic/build/Xo190xAPyW8

Re-opening as there is an issue loaded ops that are manylinux2010 repaired. Waiting on this issue:
https://github.com/tensorflow/tensorflow/issues/31807


Merge upstream/release-v0.11 into master

Manual merge upstream/release-v0.11 into master, because of a conflict.

tested and it passed with OpenShift 4.12.23 OSD Cluster

/lgtm


Comments and doc comments capabilities

Check for existing issues

[X] Completed

Is your feature request related to a problem?
I have been a long-time user of the VS Code Auto Comment Blocks plugin, and before it similar plugins for Atom and Sublime Text. Zed doesn't have anything quite like this, and of course no plugin system to support it yet!
Key features:

Auto-generation of doc comment blocks. This uses the native comment style, e.g. for Rust it would be /// ... and for JS/TS it would be a block /** ... */; and it stubs out the parameter and return types for the item in question.
https://user-images.githubusercontent.com/2403023/202463130-e4ca7376-25ac-45db-8f5e-b01902855ecc.mp4

Shift ⇧ Return ⏎ continues the current comment style, whatever it is. This is especially nice when writing non-"documentation" comments, i.e. when explaining some odd code inline with // ... comments in JS/TS/Rust/Swift/etc.
https://user-images.githubusercontent.com/2403023/202463511-eb8978f4-762c-49ab-80a8-75ac7f38b85c.mp4

Both of these are small time-savers that really add up over the course of working on any given project.
Describe the solution you'd like
Both of these features would be great, and they're not necessarily coupled. The ability to continue an existing comment style is probably the more valuable of the two from a basic text editing perspective; the other saves more time but happens much less often.
As a bonus, it would be great if hitting Return ⏎ just continues the block comment, properly indenting and including the block leader (if any), e.g. * when typing a block comment in JS/TS/etc.
If applicable, add mockups / screenshots to help present your vision of the feature
No response

i would love the block comment continuation too

Me as well! :heart:

Zed even can't keep doc block comment format when you enter the new line.

@osiewicz, are there blockers that prevent us from supporting different formats of comments for the auto comment on newline feature? I know we support // - are we able to easily add in #, ///, etcetera?

It'll require a bit of work, but it shouldn't take a PhD to do that - we are mostly limited by the expressiveness of our language config format I believe.

Ahh I see, I imagined we'd be able to look up the comment style by the given languge and apply it.  There I go being naive again!

Actually, I believe we already support '#' as continuation, though it is a line comment marker, not a block comment. I believe block comments are not supported right now.


Please bump golang.org/x/sys dependency version

This package depends on a version of golang.org/x/sys too outdated to support recent platforms such as riscv64-freebsd.  Please bump the dependency to support a build on these platforms.

@clausecker, thanks for reporting. Can you try the latest release and see if that fixes the issue for you?

I can confirm that the project builds fine on risc64-freebsd as per commit 1b80eca.  The test suite passes, too.


404 Not Found nginx/1.22.1

I get error 404 Not Found nginx/1.22.1 in http://localhost:3080/auth/login
Help me please

Are you running with docker or local? Latest release on main branch? You can make sure to set the user system variable explicitly false too

ENABLE_USER_SYSTEM= false right ?
And can you share your telegram ?

Yes but make sure there’s no space between = and false so “=false”
I don’t have telegram but you can join the discord server https://discord.gg/vQVuPwt2nc

Also clear your site data and cookies I found that helps

Please let me know if this remains an issue as it should be completely taken care of as of #118

haven't heard back and I managed to reproduce the error and fix it. Closing.


[setDeadline]: fixes #228 added setDeadline function

issues
228
Implementation
I have a setDeadline controller that is an HTTP POST request that accepts data from the frontend
@iyosayi Kindly check to see if everything works fine. Thanks

@iyosayi Kindly review.

@iyosayi Kindly check.


Avoid repeating identical error messages

If an error message is available for a Zend_Form_Element_Multiselect element, the identical message is repeated for each item of the multiselect element. To avoid this, we can only display the unique error messages per element.

Oh nice, yeah this issue is a pain, there's a workaround for it by doing something with \Zend_Form_Element but I'm glad there's an actual fix now.

Perfect, thanks for merging.


Fix linker error for dvbtest

Also clean up unnecessary dependencies.
Here are the linker errors this fixes:
gcc   -Wall -o dvbtest dvbtest.o libNativeCore.so  ../../lib/NativeCore/channel.a
dvbtest.o: In function Java_sage_DVBCaptureDevice_createEncoder0': /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:331: undefined reference to createCircBuffer'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:343: undefined reference to ACL_CreateMutex' dvbtest.o: In function Java_sage_DVBCaptureDevice_setupEncoding0':
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:610: undefined reference to resetCircBuffer' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:611: undefined reference to ACL_CreateThread'
dvbtest.o: In function Java_sage_DVBCaptureDevice_closeEncoding0': /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:714: undefined reference to ACL_LockMutex'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:716: undefined reference to ACL_UnlockMutex' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:718: undefined reference to ACL_ThreadJoin'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:720: undefined reference to ACL_RemoveThread' dvbtest.o: In function Java_sage_DVBCaptureDevice_destroyEncoder0':
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:755: undefined reference to ACL_LockMutex' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:757: undefined reference to ACL_UnlockMutex'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:759: undefined reference to ACL_ThreadJoin' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:761: undefined reference to ACL_RemoveThread'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:819: undefined reference to ACL_RemoveMutex' dvbtest.o: In function CaptureThread':
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:842: undefined reference to ACL_LockMutex' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:844: undefined reference to ACL_UnlockMutex'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:861: undefined reference to ACL_LockMutex' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:863: undefined reference to freespaceCircBuffer'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:871: undefined reference to freespaceCircBuffer' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:874: undefined reference to addCircBuffer'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:893: undefined reference to ACL_UnlockMutex' dvbtest.o: In function Java_sage_DVBCaptureDevice_eatEncoderData0':
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:974: undefined reference to ACL_LockMutex' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:975: undefined reference to usedspaceCircBuffer'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:977: undefined reference to getCircBuffer' /files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:978: undefined reference to ACL_UnlockMutex'
/files/sagetv-master/native/so/DVBCapture2.0/sage_DVBCaptureDevice.c:981: undefined reference to `ACL_Delay'
collect2: error: ld returned 1 exit status

Please take a look at the CONTRIBUTING file which has instructions on signing the Google CLA, and then I can accept code contributions from you. Let me know after you've done that. :)

Done!
On Fri, Aug 21, 2015 at 2:52 PM, Jeffrey Kardatzke<EMAIL_ADDRESS>
wrote:

Please take a look at the CONTRIBUTING file which has instructions on
signing the Google CLA, and then I can accept code contributions from you.
Let me know after you've done that. :)
—
Reply to this email directly or view it on GitHub
https://github.com/google/sagetv/pull/25#issuecomment-133529335.


Configuration of shackle mode in .config.el not loaded

I want the syntax checker to pop up at the bottom so I use the shackle mode. I wrote this in the .config.el but I have to M-x eval-buffer everytime when I start Emacs. Otherwise these code seems to make nothing.
(use-package! shackle
  :hook (python-mode . shackle-mode)
  :demand t
  :config
  (setq shackle-default-rule nil
        shackle-rules '(("\\`\\*ein: .+?\\.ipynb\\*\\'" :regexp t :same t)
                        (flycheck-error-list-mode :align 'below :size 0.22)
                                        ;	(ein:run :align 'right :size 0.5)
                        (ein:run :popup)
                        (ein:notebooklist-open :popup)))
  (shackle-mode 1))

Doom's :ui popup module provides what shackle does. Use this instead:
;; add to ~/.doom.d/config.el
(after! python
  (set-popup-rule! "^\\*ein: .+?\\.ipynb\\*" :size 0.22))

;; :side 'below is the default, so I omitted it

Please use the discord for configuration questions in the future.

And for future reference, use code fences to post code blocks:
```lisp
;; code goes here
```
You did
`
;; code goes here
`
Which made your code unreadable.


Rename "Resteemer"

Rename Resteemer to "Reblogs" or "Shared" since Hive have no Re"Steem"

fixed in bb628d96fc9006ab184bdf9a48b38164769f1fdb


Add missing STL headers

This PR includes the missing headers <algorithm> and <stdexcept> to VanDerCorput.cpp for std::max() and std::out_of_range, respectively.

This change is

Coverage remained the same at 86.288% when pulling 0b1032950864d7851011658dcb0ad57149ec9521 on bugfix/missing_headers into 6a94d4b1408b04ff59406536837e17d1bed3c307 on master.


[Issue]: rsmi_dev_energy_count_get total power measurement

Problem Description
The ROCm SMI function rsmi_dev_energy_count_get should return the total energy consumed since the last driver restart. However, the output is constant over time during one program execution. Between two program executions, the total energy changes.
Example:
first execution:
5198685762204
5198685762204
5198685762204
5198685762204
5198685762204
5198685762204
5198685762204
5198685762204
5198685762204
5198685762204

second execution:
5198710150404
5198710150404
5198710150404
5198710150404
5198710150404
5198710150404
5198710150404
5198710150404
5198710150404
5198710150404

My question: is it possible to get the real total energy consumption during one program execution and not only a constant value?
Operating System
Ubuntu 22.04.4 LTS (Jammy Jellyfish)
CPU
AMD EPYC 9274F 24-Core Processor
GPU
AMD Instinct MI210
ROCm Version
ROCm 6.1.0
ROCm Component
rocm_smi_lib
Steps to Reproduce
Using the CMakeLists.txt:
cmake_minimum_required(VERSION 3.1...3.29)

project(Test VERSION 1.0 LANGUAGES CXX)

add_executable(prog main.cpp)

find_package(rocm_smi REQUIRED)
target_link_libraries(prog PRIVATE -lrocm_smi64)
target_include_directories(prog PRIVATE ${ROCM_SMI_INCLUDE_DIR})

and the main.cpp:
#include <iostream>
#include <thread>
#include <chrono>
#include <atomic>

#include "rocm_smi/rocm_smi.h"

using namespace std::chrono_literals;

std::atomic<bool> finished{ false };

void loop() {
  rsmi_init(0);

  while (!finished) {
    [[maybe_unused]] std::uint64_t timestamp{};
    [[maybe_unused]] float resolution{};

    std::uint64_t power{};
    rsmi_dev_energy_count_get(0, &power, &resolution, &timestamp);
    std::cout << power << std::endl;

    std::this_thread::sleep_for(500ms);
  }

  rsmi_shut_down();
}

int main() {
  std::thread t{ [&]() { loop(); } };

  std::this_thread::sleep_for(5s);

  finished = true;
  t.join();

  return 0;
}

the output can be reproduced using mkdir build && cd build && cmake .. && ./prog.
Although no GPU kernels are running, the GPU should draw at least some energy. Additionally, it also does not work in our real code that in fact does use the GPU for multiple seconds.
(Optional for Linux users) Output of /opt/rocm/bin/rocminfo --support
OCk module is loaded
=====================
HSA System Attributes
=====================
Runtime Version:         1.13
Runtime Ext Version:     1.4
System Timestamp Freq.:  1000.000000MHz
Sig. Max Wait Duration:<PHONE_NUMBER>3709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count)
Machine Model:           LARGE
System Endianness:       LITTLE
Mwaitx:                  DISABLED
DMAbuf Support:          NO

==========
HSA Agents
==========
*******
Agent 1
*******
  Name:                    AMD EPYC 9274F 24-Core Processor
  Uuid:                    CPU-XX
  Marketing Name:          AMD EPYC 9274F 24-Core Processor
  Vendor Name:             CPU
  Feature:                 None specified
  Profile:                 FULL_PROFILE
  Float Round Mode:        NEAR
  Max Queue Number:        0(0x0)
  Queue Min Size:          0(0x0)
  Queue Max Size:          0(0x0)
  Queue Type:              MULTI
  Node:                    0
  Device Type:             CPU
  Cache Info:
    L1:                      32768(0x8000) KB
  Chip ID:                 0(0x0)
  ASIC Revision:           0(0x0)
  Cacheline Size:          64(0x40)
  Max Clock Freq. (MHz):   4050
  BDFID:                   0
  Internal Node ID:        0
  Compute Unit:            48
  SIMDs per CU:            0
  Shader Engines:          0
  Shader Arrs. per Eng.:   0
  WatchPts on Addr. Ranges:1
  Features:                None
  Pool Info:
    Pool 1
      Segment:                 GLOBAL; FLAGS: FINE GRAINED
      Size:                    197804460(0xbca41ac) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
    Pool 2
      Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
      Size:                    197804460(0xbca41ac) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
    Pool 3
      Segment:                 GLOBAL; FLAGS: COARSE GRAINED
      Size:                    197804460(0xbca41ac) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
  ISA Info:
*******
Agent 2
*******
  Name:                    AMD EPYC 9274F 24-Core Processor
  Uuid:                    CPU-XX
  Marketing Name:          AMD EPYC 9274F 24-Core Processor
  Vendor Name:             CPU
  Feature:                 None specified
  Profile:                 FULL_PROFILE
  Float Round Mode:        NEAR
  Max Queue Number:        0(0x0)
  Queue Min Size:          0(0x0)
  Queue Max Size:          0(0x0)
  Queue Type:              MULTI
  Node:                    1
  Device Type:             CPU
  Cache Info:
    L1:                      32768(0x8000) KB
  Chip ID:                 0(0x0)
  ASIC Revision:           0(0x0)
  Cacheline Size:          64(0x40)
  Max Clock Freq. (MHz):   4050
  BDFID:                   0
  Internal Node ID:        1
  Compute Unit:            48
  SIMDs per CU:            0
  Shader Engines:          0
  Shader Arrs. per Eng.:   0
  WatchPts on Addr. Ranges:1
  Features:                None
  Pool Info:
    Pool 1
      Segment:                 GLOBAL; FLAGS: FINE GRAINED
      Size:                    198117388(0xbcf080c) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
    Pool 2
      Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
      Size:                    198117388(0xbcf080c) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
    Pool 3
      Segment:                 GLOBAL; FLAGS: COARSE GRAINED
      Size:                    198117388(0xbcf080c) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
  ISA Info:
*******
Agent 3
*******
  Name:                    gfx90a
  Uuid:                    GPU-76651bd391bcae4c
  Marketing Name:          AMD Instinct MI210
  Vendor Name:             AMD
  Feature:                 KERNEL_DISPATCH
  Profile:                 BASE_PROFILE
  Float Round Mode:        NEAR
  Max Queue Number:        128(0x80)
  Queue Min Size:          64(0x40)
  Queue Max Size:          131072(0x20000)
  Queue Type:              MULTI
  Node:                    2
  Device Type:             GPU
  Cache Info:
    L1:                      16(0x10) KB
    L2:                      8192(0x2000) KB
  Chip ID:                 29711(0x740f)
  ASIC Revision:           1(0x1)
  Cacheline Size:          64(0x40)
  Max Clock Freq. (MHz):   1700
  BDFID:                   8960
  Internal Node ID:        2
  Compute Unit:            104
  SIMDs per CU:            4
  Shader Engines:          8
  Shader Arrs. per Eng.:   1
  WatchPts on Addr. Ranges:4
  Coherent Host Access:    FALSE
  Features:                KERNEL_DISPATCH
  Fast F16 Operation:      TRUE
  Wavefront Size:          64(0x40)
  Workgroup Max Size:      1024(0x400)
  Workgroup Max Size per Dimension:
    x                        1024(0x400)
    y                        1024(0x400)
    z                        1024(0x400)
  Max Waves Per CU:        32(0x20)
  Max Work-item Per CU:    2048(0x800)
  Grid Max Size:<PHONE_NUMBER>(0xffffffff)
  Grid Max Size per Dimension:
    x<PHONE_NUMBER>(0xffffffff)
    y<PHONE_NUMBER>(0xffffffff)
    z<PHONE_NUMBER>(0xffffffff)
  Max fbarriers/Workgrp:   32
  Packet Processor uCode:: 82
  SDMA engine uCode::      8
  IOMMU Support::          None
  Pool Info:
    Pool 1
      Segment:                 GLOBAL; FLAGS: COARSE GRAINED
      Size:                    67092480(0x3ffc000) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:2048KB
      Alloc Alignment:         4KB
      Accessible by all:       FALSE
    Pool 2
      Segment:                 GLOBAL; FLAGS: EXTENDED FINE GRAINED
      Size:                    67092480(0x3ffc000) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Recommended Granule:2048KB
      Alloc Alignment:         4KB
      Accessible by all:       FALSE
    Pool 3
      Segment:                 GROUP
      Size:                    64(0x40) KB
      Allocatable:             FALSE
      Alloc Granule:           0KB
      Alloc Recommended Granule:0KB
      Alloc Alignment:         0KB
      Accessible by all:       FALSE
  ISA Info:
    ISA 1
      Name:                    amdgcn-amd-amdhsa--gfx90a:sramecc+:xnack-
      Machine Models:          HSA_MACHINE_MODEL_LARGE
      Profiles:                HSA_PROFILE_BASE
      Default Rounding Mode:   NEAR
      Default Rounding Mode:   NEAR
      Fast f16:                TRUE
      Workgroup Max Size:      1024(0x400)
      Workgroup Max Size per Dimension:
        x                        1024(0x400)
        y                        1024(0x400)
        z                        1024(0x400)
      Grid Max Size:<PHONE_NUMBER>(0xffffffff)
      Grid Max Size per Dimension:
        x<PHONE_NUMBER>(0xffffffff)
        y<PHONE_NUMBER>(0xffffffff)
        z<PHONE_NUMBER>(0xffffffff)
      FBarrier Max Size:       32
*** Done ***

Additional Information
The program output with export RSMI_LOGGING=1: debug_output.txt

@breyerml Internal ticket has been created to assist with your issue. Thanks!

Hello @breyerml,
Thanks for providing your sample program. Can you update ROCm to the recently released 6.2 version (i.e. using amdgpu-installer method or any other) and try again?
I do see the cumulative energy counter incrementing between calls to rsmi_dev_energy_ct_get within a single program execution on my system, running an updated version of ROCm with MI210s. I also annotated the delta between power readings and it seems to hover between the two values obtained.
$ ./main
8789699213541
8789700637715 delta=1.04858e+06
8789702050512 delta=1.57286e+06
8789703470408 delta=1.57286e+06
8789704888501 delta=1.57286e+06
8789706310418 delta=1.04858e+06
8789707729883 delta=1.57286e+06
8789709151249 delta=1.57286e+06
8789710567155 delta=1.04858e+06
8789711987485 delta=1.57286e+06

Hello @jamesxu2,
sorry for the late reply (but I was on vacation).
Yes, updating to ROCm 6.2 solves the issue. Thanks a lot!


Routes scaffolding fails when running Super Scaffolding test serially.

@gazayas I wonder if this is a bug you've already fixed on another repo but we didn't merge in before The Great Unbundling.

@andrewculver Looking over the code, it looks like this is the same problem we were facing that I addressed in PR #591 in the other repository. I'll start working with that to implement it here. Before that, I just wanted to get some clarity on the routes in the Super Scaffolding test.
For these models, I'm under the impression that we need these routes:
spring rails g model Insight team:references name:string
spring rails g model Personality::CharacterTrait insight:references name:string

spring rails g model Personality::Disposition team:references name:string
spring rails g model Personality::Note disposition:references name:string
spring rails g model Personality::Observation team:references name:string
spring rails g model Personality::Reactions::Response observation:references name:string

resources :teams do
  resources :insights do
    namespace :personality do
      resources :character_traits
    end
  end

  namespace :personality do
    resources :dispositions do
      resources :notes
    end
    resources :observations do
      namespace :reactions do
        resources :responses
      end
    end
  end
end

So, for example, we WOULDN'T write the following routes for Personality::Note because it would be under the same namespace as Personality::Disposition. Both Disposition and Note refer to the same namespace, so we wouldn't make an entire new namespace like this:
resources :teams do
  namespace :personality do
    resources :dispositions do
      namespace :personality do
        resources :notes
      end
    end
  end
end

This is determined mainly by the model being referenced (i.e. - Personality::Disposition under Team, and Personality::CharacterTrait under Insight).
I just wanted to check with you if all of that makes sense. I'll start working on a fix 🛠

@andrewculver Working specifically with PR #31 in bullet_train-super_scaffolding, tests aren't working serially because of the different namespaces/resources we're trying to add all at once.
With the parallel tests, since the nodes split the scaffolding process, config/routes.rb doesn't get convoluted with different blocks so everything works fine. If you the run commands in the if blocks in the setup script one at a time and run the Super Scaffolding system test, everything passes locally just fine. It's just when we try to add everything all at once which is when the trouble starts.
I actually really like the setup which only scaffolds the models for a specific node, but we unfortunately might miss some bugs in the RoutesFileManipulator if we don't run things serially and put all of our routes in config/routes.rb.
The system tests work fine with the fix in the PR above, but minitest is throwing an error so I'll keep working on that.


Add wrapper methods to utils/js-utils. Wrap Solidity snippets in tests

This PR

Adds three methods to the js-utils file that wrap in Solidity snippets in contract or contract / function boilerplate.
Adds units tests for wrap methods
Wraps Solidity snippets in the rules unit tests.

Have left the import, pragma, and with rules untouched because those have their own issues with SP.
This is a draft. If there's anything about the way this was done that could be improved please let me know and I will happily revise. And change whatever you want.
I think I got everything in this sweep but it will be hard to know for sure until SP with your fixes is plugged in.

I would suggest moving these utils methods to a separate test utils module, to avoid bloating library code with test-related functionality.

@federicobond Agreed. And possibly relocate them to test/utils/wrappers.js or something?
@duaraghav8 Do you have any preferences about this?

agreed with @federicobond, wrappers.js is a suitable name.
@cgewecke Could you re-structure and include a doc comment on top of the file (2-3 lines) to explain the purpose of this file? I have a feeling that anyone who hasn't followed our discussions might be confused as to why this file exists :P

Ok yes excellent. I'll push those changes (my) tomorrow am.
On Jan 23, 2017 8:41 PM, "Raghav Dua"<EMAIL_ADDRESS>wrote:

agreed with @federicobond https://github.com/federicobond, wrappers.js
is a suitable name.
@cgewecke https://github.com/cgewecke Could you re-structure and
include a doc comment on top of the file (2-3 lines) to explain the purpose
of this file? I have a feeling that anyone who hasn't followed our
discussions might be confused as to why this file exists :P
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/duaraghav8/Solium/pull/71#issuecomment-274708185, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AG_gujUQ43YEkmSTe_qk6OYoXNcIz8oPks5rVYDdgaJpZM4LobDX
.

Made those revisions and cleaned up slightly. Have put the unit tests for the wrapper functions themselves in test/lib/utils against pattern - was a little wary of creating test/test/utils but will do that if it makes sense.
There might be other things to do to tighten this up a bit or make it clearer.

PERFECT!


Request to switch from 4-space tabs to 2-space indentation in TypeScript/JavaScript codebase

Issue Description:
As an active contributor and user of this TypeScript/JavaScript repository, I would like to propose a change in the indentation style from using 4-space tabs to 2-space indentation with no tabs. The goal of this switch is to improve code readability, maintainability, and consistency throughout the codebase.
Why 2-space indentation?

Readability: Smaller indentation allows for more code to fit in the same view, reducing the need for horizontal scrolling and making the codebase more accessible to developers with various screen sizes.
Consistency: Many popular JavaScript and TypeScript projects and style guides, including Airbnb, Google, and StandardJS, have adopted the 2-space indentation standard. By aligning with these standards, new contributors will feel more familiar with the codebase and can easily jump in to contribute.
Editor Support: Most modern text editors and IDEs have default settings that use 2-space indentation, which means developers using these tools will have a more seamless experience with the codebase.
Git Diffs: Smaller indentation size will result in cleaner and easier-to-read Git diffs, making code reviews more straightforward and efficient.

Proposed Solution:

Replace all existing 4-space tabs with 2-space indentation across the codebase.
Update the project's README and CONTRIBUTING files to reflect the new indentation style, making it clear for all contributors.

Plan for Implementation:

Create a branch specifically for the indentation changes.
Use automated refactoring tools to update the indentation throughout the codebase.
Manually review and address any potential conflicts or issues caused by the indentation changes.
Update the project's documentation to reflect the new indentation standard.
Submit a pull request with the changes for further review and discussion.

Potential Concerns:

Backward Compatibility: Ensure that the codebase remains backward compatible with older versions of TypeScript and JavaScript.
Impact on Existing Contributors: Address concerns from existing contributors who are accustomed to the current indentation style and provide support in transitioning to the new style.

Additional Notes:
I believe that adopting a 2-space indentation style aligns with the best practices and conventions followed by the broader JavaScript and TypeScript community. It will not only benefit the current contributors but also attract new contributors who are familiar with the 2-space standard. Let's discuss and reach a consensus on this change to enhance the overall development experience in this repository. Your feedback and input on this matter are highly appreciated.
Thank you for considering this proposal. Let's work together to make the codebase more readable and maintainable for all!

The adoption of VSCode was the wisest move I've made in software development. I encourage others to do the same.
These are non-issues in modern IDE's and general purpose code editors.

@maietta why are they non issues with an editor?

These are non-issues in modern IDE's and general purpose code editors.

That is not true.

I've been writing software since I was 12 years old. I'm 43 now. You do the math.
I'm fluent in 68 programming languages across many version of Windows, Linux, and macOS, not to mention DOS, TRS-80, Amiga and other systems, including VAX systems back in the day.
If it's an issue still for you, change your tooling. The world isn't going adopt one over the other. There will never be solidarity on this issue. Ever.
Like forever ever.

I'm closing this issue, because tracking features will be moved to GitHub discussions. Github issues will be only for bugs.
Version 4 is in full focus. v3 related issues will be closed, if it is not a critical bug.
Thanks for your understanding.

This isn’t a feature it’s a bug

That is true. But the whole repository changed from JS/TS to PHP, so it does not make sense anymore.
Or am I wrong?

Unfortunately viewing commits still imposes gigantic white space, hindering proper rendering in the browser and ides


Enhance enums

We have the option of providing linkml:meaning to PVs in enums
Note: this does affect RDF serialization - a URI is used rather than string literal, so if we do this it should be < 1.0.0 release
  predicate_modifier_enum:
    permissible_values:
      Not: Negating the mapping predicate. The meaning of the triple becomes subject_id is not a predicate_id match to object_id.

some vocabs like SNOMED include a code for NO but this is overkill I think
We could use owl:complementOf or NegativePropertyAssertion but this doesn't seem quite right
  mapping_cardinality_enum:
    permissible_values:
      "1:1": One-to-one mapping
      "1:n": One-to-many mapping
      "n:1": Many-to-one mapping
      "1:0": One-to-none mapping
      "0:1": None-to-one mapping
      "n:n": Many-to-many mapping

not aware of any vocabulary
  match_type_enum:
    permissible_values:
      Lexical: Lexical match
      Logical: Logical match
      HumanCurated: Match based on human expert opinion
      Complex: Match based on a variety of different strategies
      Unspecified: Unknown match type
      SemanticSimilarity: Match based on close semantic similarity

not aware of a single vocab but could potentially be added to EDAM?
  match_term_type_enum:
    permissible_values:
      TermMatch: A match between two terms
      ConceptMatch: A match between two SKOS concepts
      ClassMatch: A match between two OWL/RDFS classes
      ObjectPropertyMatch: A match between two OWL object properties
      IndividualMatch: A match between two OWL Individuals
      DataPropertyMatch: A match between two OWL object properties

not aware... but I think this enum needs more docs.
A match between a Class and OP is valid - e.g. many classes in PATO are famously reifications of RO properties
and where is AnnotationProperty?
What about a match between two distinct property types? Perfectly valid. And what if we match something like a skos property, which we are punning?
I think we would just use TermMatch as a generic catch-all? This is fine but maybe say this explicitly
  preprocessing_method_enum:
    permissible_values:
      Stemming:
      TaxonRestrictionRemoval:

not aware of a vocabulary
options

try harder to find terms, maybe engage EDAM, SWO
leave with no meaning, but adorn with mappings later (will still be serialized as literals)
make our own IDs, in the SSSOM namespace, with the option of a standalone ontology later

If we want to do 3, we should do before the 1.0 release

A shoot, I did that 1.0 release now (deleted it again). I didn't see your issue before. I will think about this more tomorrow.
This is a bit more intense than I was hoping for 1 second before I wanted to release 1.0.

  mapping_cardinality_enum:
    permissible_values:
      "1:1":
           description: One-to-one mapping
           meaning: sssom:OneToOne
      "1:n": One-to-many mapping
      "n:1": Many-to-one mapping
      "1:0": One-to-none mapping
      "0:1": None-to-one mapping
      "n:n": Many-to-many mapping

I think there needs to be a way to encode the enum mapping curation rules, for each set of enums.

@mellybelly can you give a concrete example? I have a hard time imagining how such a curation rule would look like (also because it is late here :))

An example would help me too. I'm afraid I'm a little lost about how list-to-list rules/provenance differs from term-to-term mappings. I may be at the wrong level of abstraction, as I'm thinking of list entries as just another type of term ('everything is an IRI' in my simple world). Or, feel free to say RTFM if that's the issue.

This issue is about the enums used in the metamodel, so it's largely separately from any issues about how users may map their own enums, value sets, whatever.
Specifically:

is there an existing ontology we can reuse URIs for concepts such as "many to many mapping" or "lexical match"

I think the curation rules thing is important - I'm also not clear on this but I think it deserves its own issue


Push notifications never arriving to the device

Current behavior:

When I send pushes from my custom Firebase push server, they never arrive to the device. This server used to work in the past, with this same plugin. It acts as a scheduler that reacts upon some live queries, and sends the push at some specific time. Although the logs of the server show that it's actually sending the push with no trouble whatsoever (with the firebase-admin lib), it does not arrive into my device.

The reason is simple: server's code hasn't changed, and it used to work perfectly. The whole part that seems to be problematic, is in the client.
Expected behavior:

Push notifications should be correctly arriving.
Steps to reproduce:

Installed the FirebaseX plugin for Cordova and @ionic-native/firebase-x.
Downloaded the google-services.json from the Firebase console. Placed it in proyect's root folder, platforms/android, and in platforms/android/app. Just in case, since none of them were working.
Re-build the APK.

Environment information

Cordova CLI version

cordova -v

Cordova platform version
9.0.0<EMAIL_ADDRESS>

Plugins & versions installed in project (including this plugin)
cordova-plugin-androidx 2.0.0 "cordova-plugin-androidx"
cordova-plugin-androidx-adapter 1.1.1 "cordova-plugin-androidx-adapter"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-firebasex 9.1.2-cli "Google Firebase Plugin"
cordova-plugin-geolocation 4.0.2 "Geolocation"
cordova-plugin-ionic-keyboard 2.2.0 "cordova-plugin-ionic-keyboard"
cordova-plugin-ionic-webview 4.2.1 "cordova-plugin-ionic-webview"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-statusbar 2.4.2 "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"

Dev machine OS and version, e.g.

Windows 10
Windows 10 v.1903,  SO 18362.900

Runtime issue

Device details

Xiaomi Pocophone F1

OS details

Android 9

Android build issue:

Node JS version

14.1

Gradle version
d-----       25/06/2020     13:57                4.10.3 d-----       25/06/2020     13:57                4.6 d-----       25/06/2020     13:57                buildOutputCleanup d-----       25/06/2020     13:57                vcs-1
Target Android SDK version

android:targetSdkVersion in AndroidManifest.xml
--> I can't find this, no idea why. May this be a problem?

Android SDK details

sdkmanager --list | sed -e '/Available Packages/q'
--> doesn't work either, although I can build the app and it works good (except for FCM pushes).

Related code:
This is my server's code, as there's no related client code rather than just importing the FirebaseX module into my main module.
  /**
     * This method will check all the scheduled pushes (push objects that are scheduled to be sent throughout the day),
     * and send them when their send date is previous to the current date.
     *
     * Returns "true" when all the promises of the saved objects have been resolved, and "false" when some haven't.
     * As the objects get removed from the pendent pushes list, this is useful for trying to save the remaining objects.
     */
    public async checkSendPushes() {
        const today = new Date();
        const promises = [];
        console.log("[PushScheduler] checkSendPushes() -> Checking " + this.scheduledPushes.length + " pushes...");
        for (let i = 0; i < this.scheduledPushes.length; i++) {
            const schPush = this.scheduledPushes[i];
            // Check whether the sendDate has already passed; therefore, send the push (the delay won't be high)
            // --> Also, check if there's no date to send. That means it's an immediate push.
            console.log("Scheduled push date: ", schPush.date);
            if (!schPush.date || moment(schPush.date).isBefore(moment(today))) {
                console.log(`>>> 🚀 Sending push!`, schPush.pushObject.notification.body)
                promises.push(
                    this.firebaseRef.messaging()
                        .sendToDevice(schPush.userFCMToken, schPush.pushObject)
                        .then(res => this.scheduledPushes.splice(i, 1))
                        .catch(err => {
                            console.log("[PushScheduler] Error sending push: ", err)
                        })
                );
            }
        }
        try {
            await Promise.all(promises);
            return true;
        } catch (err) {
            console.log("[PushScheduler] => checkSendPushes  ERR: ", err)
            return false;
        }

    }

My intuition keeps telling I'm doing something wrong somewhere in my ecosystem, but it doesn't make much sense that I don't get any kind of error and this thing keeps not working. The package name is correct, the plugins seem to build well, and even the Gradle Build gets the google-services.json file and puts it into the APK — which makes me think that the plugin is correctly gathering all its needed info and files to work.
Being it this way... why doesn't it work? I've been struggling with this problem for weeks, and this is starting to become a very serious problem I can't find ANY solution to. I tried literally every StackOverFlow solution, and none of them work.
This is a desperate call for help. I will appreciate a lot every effort to fix this.
Thank you.

Try building and running the example project to eliminate possible problems in your codebase and use its built-in FCM v1 API messaging client to rule out any issues on your server-side.
Since you are testing on a Xiaomi device, bear in mind that there is an issue which will cause notifications not to be received if the app is not running - see #235.
This plugin is in use in production in numerous apps (including my own) and therefore the issue is specific to you rather than a generic issue affecting all plugin users and for that reason I'm closing this as it's a support issue not a plugin bug.

Pushes don't work in Xiaomi devices? How's that? This was working for me just a couple of months ago, so that cannot be the problem. I re-organised the project, so I updated plugins just like yours, and that's what actually led me to this problem.
Does installing the AutoStarter plugin you mention in #235 currently work for fixing the problem?
Thank you.

Pushes don't work in Xiaomi devices?

The issue with OEMs like Xiaomi is they automatically blacklist apps from autostarting, preventing them from being launched when a push notification is received when the app is not running - it works OK if the app is running in foreground or background.

Does installing the AutoStarter plugin you mention in #235 currently work for fixing the Xiaomi problem that you mention?

It is supposed to resolve the above issue though I don't have such a device to test on so I haven't tried it to confirm this is the case.

I was just making some testings and the pushes are not being received even if the app is in background/foreground, so I guess that my problem's root is not in this issue.

It is supposed to resolve the above issue though I don't have such a device to test on so I haven't tried it to confirm this is the case.

So I guess this plugin is still not embedded in your FirebaseX plugin?

So I guess this plugin is still not embedded in your FirebaseX plugin?

No but if someone with an affected device is able to make and test a PR containing it, I will merge it.

hello @dpa99c.
On my device xiaomi is not working when the app is closed.
On my samsung everything works correctly.
I am available to test possible new releases to fix this problem.
Thanks


[BUG] Right click menu blank

What did you expect to happen?
Right click menu visible
What actually happened?
Almost blank menu
Additional details:

Include a link to your private config
https://github.com/mustaqimM/dotfiles/tree/master/.config/doom/modules/private/mustaqim
Include screenshots/casts of your issue

Steps to reproduce:

Invoke right click

System information:

emacs   version    26.3
        features   XPM JPEG TIFF GIF PNG RSVG SOUND GLIB NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB LUCID X11 XDBE XIM MODULES THREADS LCMS2
        build      Aug 29, 2019
        buildopts  (--with-x-toolkit=athena --without-toolkit-scroll-bars --without-dbus --without-gconf --without-gsettings --prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin --bindir=/usr/bin --mandir=/usr/share/man --infodir=/usr/share/info --localstatedir=/var --with-file-notification=inotify --with-modules --with-jpeg --with-tiff --with-gif --with-png --with-xpm --with-rsvg --without-imagemagick --with-xml2 --with-gnutls --with-sound --with-m17n-flt --host=x86_64-unknown-linux-gnu --build=x86_64-unknown-linux-gnu 'CFLAGS=-fno-PIE -mtune=generic -O2 -pipe   -g' 'CPPFLAGS=   ' 'LDFLAGS=-no-pie -Wl,--as-needed    ')
        windowsys  x
        daemonp    daemon
doom    version    2.0.9
        build      HEAD -> develop, origin/develop, origin/HEAD a8fd59a05 2019-12-03 22:56:33 -0500
system  type       gnu/linux
        config     x86_64-unknown-linux-gnu
        shell      /bin/sh
        uname      Linux 5.3.15_1 #1 SMP PREEMPT Thu Dec 5 10:45:59 UTC 2019 x86_64
        path       (~/.zplugin/snippets/cht.sh/ ~/.zplugin/plugins/zdharma---zsh-diff-so-fancy/bin/ ~/.zplugin/plugins/junegunn---fzf-bin/ ~/.zplugin/plugins/karan---joe/ ~/.zplugin/plugins/dylanaraps---pfetch/ ~/.zplugin/plugins/Peltoche---lsd/lsd/ ~/.zplugin/plugins/pixelb---ps_mem/ ~/.zplugin/plugins/direnv---direnv/ ~/.zplugin/plugins/sei40kr---fast-alias-tips-bin/ /usr/local/bin/ /bin/ /usr/bin/ /usr/local/sbin/ /usr/sbin/ /sbin/ /opt/texlive/2019/bin/x86_64-linux/ /usr/libexec/emacs/26.3/x86_64-unknown-linux-gnu/)
config  envfile    envvar-file
        elc-files  0
        modules    (:completion company ivy :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ophints (popup +all +defaults) treemacs vc-gutter vi-tilde-fringe window-select workspaces :editor (evil +everywhere) file-templates fold multiple-cursors rotate-text snippets :emacs dired electric vc :tools eval flycheck (lookup +docsets) magit :lang data emacs-lisp latex lua markdown (org +dragndrop +ipython +pandoc +present) python racket ruby rust sh :config (default +bindings +smartparens) :private mustaqim)
        packages   (n/a)
        elpa       (n/a)

okay, never mind. I shut down the pc and now I see it's back to normal. This occurred after I updated.

It isn't styled though?

It isn't styled though?

Emacs uses GTK for its GUI elements. Unless you've configured GTK to use a theme, these will be unstyled. This cannot be changed from inside Doom.
Hope that helps!

hmm, I have set in ~/.config/gtk-3.0/settings.ini:
[Settings]
gtk-theme-name=Mojave-dark
gtk-icon-theme-name=Papirus-Dark
gtk-font-name=DejaVu Sans 10
gtk-cursor-theme-name=Breeze_Hacked_White
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_ICONS
gtk-toolbar-icon-size=GTK_ICON_SIZE_MENU
gtk-button-images=1
gtk-menu-images=1
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintmedium
gtk-xft-rgba=rgb

I don't actually use the context menu but I'll try to find what's wrong

@mustaqimM is not using GTK, rather an Emacs version compiled to use "Lucid Resources".


224 Added styleConstants object to provider

Accessible through useTheme(), can be set like useTheme().styleConstants = {"key": "value"}. I was able to set it in button then log it in card and see the value update.

@aVileBroker can you help me understand the use case for this? Is our intention to start using some of these constants in future updates to our components? Or, what does a consumer gain from this that they don't get from having some declared constants file in their own project?

We do plan on adding more properties here - borderRadius for instance could be something like a color scheme where the radii presets could be "subtle, intense, moderate" or something. This PR is intended to give consuming devs to use our provider to consolidate their style/theme/brand-related constants in. Too often do I have an App.tsx which has 4 different nested context providers to get all the data I need. Having a useTheme() hook which only provides a couple of items in it seems wasteful, and allowing the devs to add their own properties seems useful and a nice way to reduce code bloat.

@PatrickDeVries The last two things this PR needs is an update to the README file somewhere in/around global styling where the provider is mentioned - and an update to the provider story in storybook

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


NoClassDefFoundError regarding EnumEntries since MapDB 3.1.0

I've just updated MapDB from 3.0.10 to 3.1.0.
Now I'm getting the following error:
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.mapdb.DB]: Factory method 'sessionsDB' threw exception; nested exception is java.lang.NoClassDefFoundError: kotlin/enums/EnumEntriesKt
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.31.jar!/:5.3.31]
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:648) ~[spring-beans-5.3.31.jar!/:5.3.31]
        ... 54 common frames omitted
Caused by: java.lang.NoClassDefFoundError: kotlin/enums/EnumEntriesKt
        at org.mapdb.DBMaker$StoreType.<clinit>(DBMaker.kt:35) ~[mapdb-3.1.0.jar!/:na]
        at org.mapdb.DBMaker.fileDB(DBMaker.kt:50) ~[mapdb-3.1.0.jar!/:na]
        at org.mapdb.DBMaker.fileDB(DBMaker.kt:54) ~[mapdb-3.1.0.jar!/:na]

As there is no changelog that mentions required migration steps: What to do? I guess there is a runtime dependency missing. I'm using Java 11.

I'm getting the same error

Same problem for me with Java 21

Same problem for me with Java 1.8

Upgrade kotlin-stdlib to 2.0 can fix this problem

I've migrated to the Eclipse Serializer from the EclipseStore project, so I'm no longer facing this issue.


cleans up install.sh

so when building my most-file-reader repo using the one-liner from this repo i noticed that i get
package.json-- & package.json it was due to my sed command creating a backup file with --
Without the dashes it seems to have an issue (throws an error) on Mac OSX so i decided to use the .bak convention and then deleting that back up file.
I also added a rm -rf for the install.sh because it doesn't seem like package creator would need that file in their repo ?

lgtm thanks!

LGTM


Draft: Parser heredocs

I started work on #2374. It's a small thing - the "source" location is a bit off on tilde-heredocs (a.k.a. squiggly heredocs). But it looks like we're also not lexing them quite like Parser does, and we do limited (or no) checks on some heredoc-related fixtures, especially for lexing (e.g. look at skip_all and skip_tokens in parser_test.rb). Our heredoc support for Translation::Parser is kind of limited and doesn't 100% match up.
I've been building better debugging support, such as unit tests on inline code and teaching "bin/prism parser" to emit source locations with its sexps. And I've improved the lexer a bit to match some source locations better. With tilde heredocs that means keeping a stack of string begin/ends, for instance, so that we can trim leading whitespace since Parser does that for lexing, not just parsing.
But I think maybe we don't care as much about the lexer. I had originally thought I'd need to fix that to fix the parser source locations. Now I think I was wrong about that.
This is a little rough. I'm just putting this up to show where I'm at and what I'm thinking for right now. Parser::Compiler#visit_heredoc is definitely going to need more work. I'm getting some basic tests working (various kinds of simple heredocs, nested heredocs, etc.) directly in parser_test.rb. And I can turn more fixtures on once more stuff works.

What's in this PR isn't the right solution to the issue in question, though some of it's still useful debug infrastructure. I'll reopen a new issue later.


Add note about x-openapi-router-controller when using OAS

Changes proposed in this pull request:

Add a note about x-openapi-router-controller when using OAS

Fantastic work, this repo is. There are quite a few confusions out on the interwebs about the RestyResolver, one of which I stumbled on when using OpenAPI 3. A simple docs update should help others not spin their wheels on this like I did.

See this comment for where I finally found the hint from Googling a lot: https://github.com/zalando/connexion/issues/1031#issuecomment-668771368

:+1:


Updating crossmint.md to include internal analytics

I made a few minor edits for us to keep track of analytics through utm_source and campaigns.
This helps us understand the users that are being redirected to our docs, product, etc through the Polygon docs. Eventually, we will use the inferences drawn from the analytics to provide more catered content for the Polygon ecosystem and community
@kmurphypolygon can you please merge this? Thank you!
And it would also be helpful if this can get added to https://docs.polygon.technology/pos/how-to/smart-contracts/ since the old docs (before migration) had this tutorial under that category as well.
Thank you so much, looking forward to your response!

Done @rohit-710 :)


make through error cmd/ledis-load/main.go:6:2: cannot find package "github.com/siddontang/ledisdb/config" in any of:

#uname -a
Linux ubdesk1404 3.13.0-53-generic #89-Ubuntu SMP Wed May 20 10:34:39 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
#$PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/cloud/gocode/bin
#make
godep go install -tags 'linenoise ' ./...
cmd/ledis-load/main.go:6:2: cannot find package "github.com/siddontang/ledisdb/config" in any of:
/usr/src/pkg/github.com/siddontang/ledisdb/config (from $GOROOT)
/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb/Godeps/_workspace/src/github.com/siddontang/ledisdb/config (from $GOPATH)
/home/cloud/gocode/src/github.com/siddontang/ledisdb/config
cmd/ledis-load/main.go:7:2: cannot find package "github.com/siddontang/ledisdb/ledis" in any of:
/usr/src/pkg/github.com/siddontang/ledisdb/ledis (from $GOROOT)
/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb/Godeps/_workspace/src/github.com/siddontang/ledisdb/ledis (from $GOPATH)

$ make
godep go install -tags 'linenoise leveldb' ./...
Godeps/_workspace/src/github.com/BurntSushi/toml/encoding_types.go:10:2: cannot find package "encoding" in any of:
/usr/src/pkg/encoding (from $GOROOT)
/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb/Godeps/_workspace/src/encoding (from $GOPATH)
/home/cloud/gocode/src/encoding
/home/cloud/gocode/bin/src/encoding
/home/cloud/gocode/pkg/src/encoding
/home/cloud/gocode/src/src/encoding
/home/cloud/prototypes/ledisdb/src/encoding
godep: go exit status 1
make: *** [build] Error 1

Hi @darshan-ghumare
What's your GOPATH, GOROOT and  Go version?

Thanks /siddontang.
$GOPATH
/home/cloud/gocode/:/home/cloud/gocode/bin:/home/cloud/gocode/pkg:/home/cloud/gocode/src:/home/cloud/prototypes/ledisdb
GOROOT not set
go version
go version xgcc (Ubuntu 4.9.1-0ubuntu1) 4.9.1 linux/amd64

Hi @darshan-ghumare , if you don't set GOROOT to your go installed path, you can not use the standard   package like encoding.
ledisdb is not in the correct path, e,g, the source must be in ${GOPATH}/src/github.com/siddontang/ledisdb, you can see the readme for more build and install information.
Thank you.

cloud@ubdesk1404:~/prototypes/ledisdb/src/github.com/siddontang/ledisdb$ $GOPATH
-bash: /home/cloud/gocode/:/home/cloud/gocode/bin:/home/cloud/gocode/pkg:/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb:/home/cloud/prototypes/ledisdb: No such file or directory
cloud@ubdesk1404:~/prototypes/ledisdb/src/github.com/siddontang/ledisdb$ make
godep go install -tags 'linenoise leveldb' ./...
Godeps/_workspace/src/github.com/BurntSushi/toml/encoding_types.go:10:2: cannot find package "encoding" in any of:
/usr/lib/x86_64-linux-gnu/go/4.9/src/pkg/encoding (from $GOROOT)
/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb/Godeps/_workspace/src/encoding (from $GOPATH)
/home/cloud/gocode/src/encoding
/home/cloud/gocode/bin/src/encoding
/home/cloud/gocode/pkg/src/encoding
/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb/src/encoding
/home/cloud/prototypes/ledisdb/src/encoding
godep: go exit status 1
make: *** [build] Error 1

Hi @darshan-ghumare , if you install your go like /usr/local/go, do you do export GOROOT=/usr/local/go ?

Hi siddontang,
Thats what I did.
$ $GOROOT
/usr/lib/x86_64-linux-gnu/go/4.9/: Is a directory
cloud@ubdesk1404:~/prototypes/ledisdb/src/github.com/siddontang/ledisdb$ make
godep go install -tags 'linenoise leveldb' ./...
Godeps/_workspace/src/github.com/BurntSushi/toml/encoding_types.go:10:2: cannot find package "encoding" in any of:
/usr/lib/x86_64-linux-gnu/go/4.9/src/pkg/encoding (from $GOROOT)
/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb/Godeps/_workspace/src/encoding (from $GOPATH)
/home/cloud/gocode/src/encoding
/home/cloud/gocode/bin/src/encoding
/home/cloud/gocode/pkg/src/encoding
/home/cloud/prototypes/ledisdb/src/github.com/siddontang/ledisdb/src/encoding
/home/cloud/prototypes/ledisdb/src/encoding
godep: go exit status 1
make: *** [build] Error 1

Hi @darshan-ghumare , /usr/lib/x86_64-linux-gnu/go/4.9/ doesn't seem a valid go root path, how do you install go? if you enter this path, what's the output for ls? do you see any "src", "bin" or "pkg" directory in it?
you can see more here https://golang.org/doc/install
btw, can you run any other go program?

Thanks.
Now, not able to find ledis-server
$ ledis-server
No command 'ledis-server' found, did you mean:
Command 'redis-server' from package 'redis-server' (universe)
ledis-server: command not found

Hi @darshan-ghumare
ledis-server is installed in your GOPATH/bin directory, look it here.
later I will change it to install in local bin directory.

Thank you so much siddontang.

:-)


SVM threaded cross validation trainer return type inconsistent and fails to compile

The return value of cross_validate_trainer is
const matrix<double, 1, 2, typename trainer_type::mem_manager_type>
The return value of cross_validate_trainer_threaded is
const matrix<typename trainer_type::scalar_type, 1, 2, typename trainer_type::mem_manager_type>
Note that the value type of the matrix switched from double to trainer_type::scalar_type.  This is confusing as I expected the threaded version to be a drop-in replacement for the unthreaded version with the exception of the number of threads argument.
Even worse, the threaded version fails to compile if trainer_type::scalar_type is not double.  I do not mind the return type being double even if trainer_type::scalar_type is something else (like float), but it should compile.  The error is a compile time assert from matrix/matrix.h line 1474 that the assignment has incompatible types.  The error message references svm/svm_threaded.h line 60.
I think the issues is that cvtti_helpers::task::operator() is instantiated with matrix_type = matrix<trainer_type::scalar_type, 1, 2, trainer_type::mem_manager_type>.  See svm/svm_threaded.h lines 55, 140, and 211.  Unfortunately, the return type of test_binary_decision_function is const matrix<double,1,2> test_binary_decision_function.  This causes an assignment  at svm/svm_threaded.h line 60 from a matrix<double,1,2> to a matrix<trainer_type::scalar_type,1,2>.
It would see like changing the return type of cross_validate_trainer_threaded to matrix<double,1,2> and making the corresponding changes to cvtti_helpers::task would solve both issues.
https://github.com/davisking/dlib/blob/38a2846ddad5a81fab9905b76d061ad473001eba/dlib/svm/svm.h#L536-L547
https://github.com/davisking/dlib/blob/38a2846ddad5a81fab9905b76d061ad473001eba/dlib/svm/svm_threaded.h#L227-L239
https://github.com/davisking/dlib/blob/38a2846ddad5a81fab9905b76d061ad473001eba/dlib/matrix/matrix.h#L1472-L1475
https://github.com/davisking/dlib/blob/38a2846ddad5a81fab9905b76d061ad473001eba/dlib/svm/svm_threaded.h#L48-L60
https://github.com/davisking/dlib/blob/38a2846ddad5a81fab9905b76d061ad473001eba/dlib/svm/svm_threaded.h#L140
https://github.com/davisking/dlib/blob/38a2846ddad5a81fab9905b76d061ad473001eba/dlib/svm/svm.h#L160-L169

Yeah that's awkward.  Changing it to double is a good idea.  Please submit
a PR for it if you have time :)


Bug Report (Don't display ubuntu terminal)

I installed windows terminal through Microsoft store. But I can only see power shell and cmd. In the introduction video I can see that it has bash as well. I couldn't find any documentation section to whether how to enable this or not.

Have you installed Ubuntu from the Store as well? I pulled down the terminal yesterday and my 18.04 install was added automatically. Make sure it's installed and if it doesn't pop up, go to the settings for the terminal and edit the JSON file to include it.

Reference: https://docs.microsoft.com/en-us/windows/wsl/about

Hi @WSLUser  I have ubuntu as Windows subsystem for linux. But the thing is it's not included in the drop down list in windows new terminal. I only get powershell and cmd. If you check here https://devblogs.microsoft.com/commandline/introducing-windows-terminal/ they are listed to be chosen.

Try another distro to see if it's specific to Ubuntu. Pengwin and FedoraRemixforWSL came up automatically after installing the Terminal from Store.

It showed up for me automatically but you could try adding a new profile and setting commandline option to wsl.exe -d Ubuntu

I was going to mention that but was wondering if Ubuntu had a bug in it. If you don't have a version of Windows that supports wsl.exe -d.
Windows Subsystem for Linux Distributions:
Ubuntu (Default)

@WSLUser That would cause issues when you actually click on the new tab, it won't cause issues with populating the list.  The list is populated using the noisy, old wsl --list.

Ah I see. but launching wsl.exe opens a regular terminal. So I was thinking it should be able to work in Terminal as well, if indirectly at least. Say you use Terminal to open Powershell, and enter wsl. If the distro wasn't listed before, it should be able to detect it now that it's actively being used within Terminal. It just happens to be running in a PS session in my example.

This is because we do not refresh your list of default profiles on launch. You can delete your profiles.json to make it re-scan the distribution list. #754 #1321

Thanks @JBanks  it worked like a charm after deleting the profiles.json and launching the windows terminal again.


Using prerelease of Avalonia

Why you are not using a prerelease of Avalonia!?
all other Avalonia Packages I'm using is using a prerelease versions of avalonia so I can't add this package
can you please start using a prerelease or some workaround to use Aura.UI with a prerelease

Yes, please. This library is awesome!


Fix race condition in RecordingHostnameVerifier

When connections are established concurrently, verify() sometimes throws a java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 0 because of unsynchronized access to the calls list.

Wanna make verify() synchronized instead? synchronizedList() is bad because it uses a weird lock, and won’t work if we want another method like take() later.

I made verify() synchronized instead.


add equals to Is for usage Is(some_var).equals(5)

I havent understand how assert equality and made the PR.

@GraDea thanks for your effort
In Python, if you need to check if a number equals (or is different from) another number, you simply use == and !=
Quite easy and straightforward... So, in the specific case of numbers, the functions you wrote don't look particularly useful
Had you any questions about how to use fluentcheck, just ask

I have to write in such tests
self.assertEqual(some_var, 5)
I think that it great when you can use single approach for all tests.
Also I'm from dotnet-world and use fluentassertion in this style:
some.Should().BeEqual(5).And().Other().Chain().Of().Assertions().
It very usable.

You might consider to look at the equality check problem at a higher perspective... would it be useful to have something like this?
class Check:

    ...

    def __eq__(self, other):
       ...

    def __ne__(self, other):
       ...

>> x = 4
>> Check(x) == 4   # True
>> Check(x) != 4   # False

IMO yes!
But this comes at the potential cost of a maintenance on the __eq__ and __ne__ methods as they would need to support all builtin and custom types equality/inequality checks
I might be talking bullshit..
@GraDea let me know your take, I'm also wondering what @mikeckennedy and @deanagan think about that

Hi Guys,
I think there are 2 sides to the approach of allowing eq/ne. We tend to always choose simple as better than complex in Python, which I understand @csparpa is coming from.
Having said that, nowadays, some companies tend to use multiple languages for their business, the question of "how do I do something like X in Python" frequently comes up.  Being able to supply answers to this question, although sometimes silly (why would you want to use a Python approach to do [insert langauge] approach), becomes a necessity to get others to adopt a library.
I understand @GraDea is coming from .net. In .net we sometimes have these kind of tests:
    using (new FluentAssertions.Execution.AssertionScope("caffeine"))
    {
        result.Average.Should().Be(250);
        result.DailyIntake.Should().BeInRange(200, 400);
    }

Which makes sense, that we want to use fluent assertions in both approaches so they are consistent within assertion scope.
Also, the same thing exists in other languages, javascript with mocha and chai for example:
import { describe, it } from "mocha";
import { expect } from "chai";

describe("Disconnected Users functions", () => {
  it("Test disconnected users when middle node is crushed", () => {
   ...
    expect(disconnected_users(net, lookup, source, crushes)).to.be.equal(70);
  });
}

If you ask me, to and be feels excessive for that library, but common opinion is that it makes the assertion more readable.


Do we need to handle name collisions with multiple templates?

It's possible for someone to upload a template named "next_steps.docx" and then run into a problem with their interview. I do not know if we need to handle this issue or not.
For now, in #373 I will prefix with interview_label.

I think this is a non-problem now that we prefix w/ interview_label, but I'll tag this for future reference.


[Draft Do-Not-Merge]update customize code for openai

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.AI.OpenAI


Create iut-tlse3.txt

addition of my school for student license

For the record: according to whois, this email domain is owned by:
nic-hdl:     IDTT1-FRNIC
type:        ORGANIZATION
contact:     UNIVERSITE PAUL SABATIER TOULOUSE III
address:     115, route de Narbonne
address:     31400 Toulouse
country:     FR

@BerghuisPeter Pull request merged. Thank you!


Add customization of alerts

Checklist

[X] I have filled out the template to the best of my ability.
[X] This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
[X] This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.
No response
Describe the solution you'd like
It would be really interesting if there is a setting on the Teslemetry console to select which alert types stream. I would like to be able to configure scopes for the alerts and have it on the recent alerts / errors fields on Home Assistant. This can be useful to stream errors that appear only in service mode and not in the normal mode (UI Hidden).
This can be possible, setting "alert_types" on the fleet_telemery_config to "customer" and/or "service" scopes. I don't know if the Recent Alerts Endpoint can be used also.
Later on, this can be further enhanced providing the user the description of the alert using the "user_text" it returns
Additional context
Fleet API Config
Recent Alerts Endpoint

So when streaming telemetry was first added to Teslemetry I did provide the ability to pick which alert types should be sent, but it became clear this provided so little value as we never saw an alert that was service or service_fix only. So I removed the UI and made everything default to customer alerts.
I'm not opposed to adding service and service_fix back, and would prefer to just make it the default to avoid having a semi confusing UI that does nothing.
Ill have to investigate the text you mentioned more though as I don't believe that's always present.

Hi Brett, thanks for looking on to this.
My personal use is just to have a “log” outside the car. Every time I want to look into this, I need to go inside Service Mode, which if I can have it directly streamed (into Home Assistant or others) It will be better for me. Also, some alerts which appear under factory, service-fix or service, doesn't appear in normal UI mode. It's just an interesting function I'll be happy to have if possible.
Thanks!

If you modify your streaming config on the Teslemetry console it will now enable service alerts by default.


Product and order review, and feedback features

Adding build-in reviews is not on our roadmap. You can integrate with any of the external services: https://www.predictiveanalyticstoday.com/top-product-reviews-platform/
Review platforms need additional management for spam, moderating content, etc., so it's a good idea to use a specialized platform for that.

This would be an awesome feature to have definitely. Especially in developing countries where online purchases are still not trusted.


Replace cglib with Byte Buddy for Java 16 compatibility

Fixes #901

FYI cglib-based test worked when enum used by a config class is package private.
the new version of the test requires enums to be public
(perhaps applies to any other class used by a config, i just noticed this with an enum)


feat: Implement a Bi-Directional Chat - V Rising <-> Discord

It would be great if chat messages from within the game are visible on Discord and messages in a specific discord channel are also visible in game. This is how it could be implemented:
Message from Game to Discord:

capture chat messages using the bot-companion and send them to discord via Webhooks

Messages from Discord to Game:

expose and API endpoint using the bot-companion that allows the discord bot to post messages to the chat. Every message in a given channel could then be posted to that endpoint so that it's visible in game.

Might be useful to implement some form of rate limiting here.

wait for the next update to drop as it will likely break all mods again... i'll look into implementing this afterwards

See: https://github.com/DarkAtra/v-rising-discord-bot-companion/pull/24


Running as standalone server

HI,
I'm using the latest version - Elasticsearch 5.3.0
As i'm unable to install it as plugin, i want ti install as standalone server.
Is this possible to run as a standalone server
When i do npm run start,
np

m ERR! Failed at the<EMAIL_ADDRESS>start script '_site/index.html'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the elasticsearch-gui package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     _site/index.html
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs elasticsearch-gui
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls elasticsearch-gui
npm ERR! There is likely additional logging output above.

Please help me on this

The easiest would be to build the project and put on a static webserver. Still I have not tested it with elastic 5, so no idea if it will work.

this may be an alternative
https://github.com/xzer/elasticsearch-plugin-hosting


More font loading speedups

Reduce data reinterpretation between platform layer and alfons.
Moving from a total of 946.282ms to 425.619ms on iPhone 6s, other platforms need to be updated.

@karimnaaji I think we could add a move constructor to alfons::InputSource with this PR - just in case the compiler does not optimize the copy out.

Yeah we checked with @tallytalwar comparing data address to see if the RVO was actually propagating from the platform layer to alfons, but it would be worth to force the compiler to do that.


test: refactor test that ensures expected versions

That's not relevant for this specific test, since it does not concern the custom object.

WIP: Solving conflicts files


docs: try to make window inline

Just testing if we can get the streamlit app to render in the website instead of by a link

Misha: "if it doesn't show up in your window, click this link"

Maybe minimize sidebar by default?


Make compatible with Datasette>=0.44

This plugin is not currently not compatible with current Datasette because of asgi-csrf version conflicts. I can drop the asgi-csrf dependency entirely now.

Also drop Starlette and move to register_routes().


Extending a service fails in test

public function createApplication() {
        include __DIR__ . '../web/index_dev.php';

        /** @var Application $app */
        $app['session.test'] = true;
        $app->extend('helper', function ($helper, $c) {
                return new TestHelper($c);
            }
        );

        return $app;
    }

fails with Identifier "helper" does not contain an object definition..
P.S. index_dev.php contains an app and $app['helper'] = function ($app) {return new Helper($app);}; definitions

The same issue I have with redefining mock session object via:
$app['session'] = new Session(new MockFileSessionStorage());

What is the correct way of redefining objects?

http://pimple.sensiolabs.org/#modifying-services-after-definition

@ragboyjr Yes, I did it. And it fails with the error above

Well, in your above example, you can only extend services that actually have been defined and that have been defined with a closure.
Here's a code example that shows your error:
$container = new Pimple\Container();
$container['a'] = 'a';
$container->extend('a', function($a) { return $a . 'a'; });

You probably aren't setting the helper service correctly in a file or something.

@ragboyjr What exactly you mean by "aren't setting the helper correctly" ? I followed the docs, which says it's possible to define services as anonymous functions. So my definition is:
$app['helper'] = function ($app) {
    return new Helper($app);
};

@vicmosin the fact that the helper service got frozen is probably related to another service being defined in a non-lazy way, and this other service depends on the helper.
So to debug it, look for places using the helper service in your project

@stof I understand that and I know where it's done. I just try to understand how can I modify service, following the docs. As far as I understand, http://pimple.sensiolabs.org/#modifying-services-after-definition should help me to solve frozen service issue

@vicmosin if you extend all your services this way, you will indeed avoid freezing services early. Your issue is probably that you have 1 place not following this pattern to modify a service (and so it freezes some services earlier than wanted)

@stof please see that error that I have is different in case of modifying.. Identifier "helper" does not contain an object definition.

@vicmosin Do you actually boot or run the app in index_dev.php?
Maybe you should move the definitions in a bootstrap file returning the $app that you can require in both your front controller and in your test:
// app/bootstrap.php
$app = new \Silex\Application();

$app['helper'] = ...

return $app;

// web/index_dev.php
$app = require_once __DIR__.'/../app/bootstrap.php';
// ...

$app->run();

// in your test
public function createApplication() {
    /** @var Application $app */
    $app = require_once __DIR__ . '/../app/bootstrap.php';

    $app['session.test'] = true;
    $app->extend('helper', function ($helper, $c) {
        return new TestHelper($c);
    });

    return $app;
}

@HeahDude Thanks man, you saved my day. The issue was in $app->run()!

@vicmosin Glad that helped, happy coding :)


help: How to remove trailing slash from homepage url

📚 What are you trying to do?
I need to remove the trailing slash from the homepage location into the sitemap, others location are working fine.
So for example, I need to replace the location https://example.com/ with https://example.com.
Other locations are working without errors, also canonical url and internal links are compiled without trailing slashed.
🔍 What have you tried?
No response
ℹ Additional context
The sitemap is generated building with nitro using the cloudflare pages preset.

Both of these are equivalent, for semantic reasons I prefer having the trailing slash on the root domain and it can help avoid some issues.
See https://webmasters.googleblog.com/2010/04/to-slash-or-not-to-slash.html

Rest assured that for your root URL specifically, https://example.com is equivalent to https://example.com/ and can't be redirected even if you're Chuck Norris.

Hi @harlan-zw , the problem is that the useLocaleHead method returns a canonical url without the trailing slash even fort the home page. I understand that this method is not part of your lib, but is there a solution to make them equal?
Thanks.

It won't be an issue if the canonical here doesn't match as they are the same thing in Google's eyes. Are you seeing a warning from any google tooling?

Yep, try to test core web vitals, in the SEO section you will see the issue. Google prefers the home URL with trailing slash, Google redirects the base path without trailing slash to the version with it.For now I have manually update the canonical and alternatives hreflang adding the trailing slash for the the homepage only.Is there a way to do it better?ThanksIl giorno 13 ago 2024, alle ore 06:57, Harlan Wilton @.***> ha scritto:
It won't be an issue if the canonical here doesn't match as they are the same thing in Google's eyes. Are you seeing a warning from any google tooling?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

I'd suggest for the time being to use the Nuxt SEO module which will override the canonical to the correct path. Otherwise I'll need to look into this further when I have some free time.

Important to note that the HTTP spec says that an empty path should be converted to a / so it's more so an issue with the Nuxt I18n module, however again they are equivalent.

If  the abs_path is not present in the URL, it MUST be given as "/" whe used as a Request-URI for a resource (section 5.1.2).

https://www.rfc-editor.org/rfc/rfc2616#section-3.2.2


[Bug report] dataplane poll with default port_number doesn't work when there are multiple ptf nn agents

Source code: #https://github.com/p4lang/ptf/blob/c554f83685186be4cfa9387eb5d6d700d2bbd7c0/src/ptf/dataplane.py#L900
Simplified code:
    def poll(
        self, device_number=0, port_number=None, timeout=None, exp_pkt=None, filters=[]
    ):
        def grab():
            self.logger.debug("Grabbing packet")
            for rcv_port_number, pkt, time in self.packets(device_number, port_number):
                rcv_device_number = device_number
                if not exp_pkt or match_exp_pkt(exp_pkt, pkt):
                    return DataPlane.PollSuccess(
                        rcv_device_number, rcv_port_number, pkt, exp_pkt, time
                    )
            return None

        with self.cvar:
            ret = ptfutils.timed_wait(self.cvar, grab, timeout=timeout)

        return ret

The problem is:
when there are multiple ptf nn agents connecting the dataplane, there will be equvilent count of "device numbers", however, when we call poll with port_number=None, it will only poll packet from the device with number 0.
That doesn't make sense, when exp_pkt is not none and port number is none, we should poll packets from all devices.

Would it be even more flexible and potentially useful if the following options were provided to callers of poll?

The current behavior, where the caller can specify a single device number to perform the poll operation on.
A new behavior, perhaps indicated by providing a new special named value as the device_number parameter to mean "all devices", that behaves as you suggest?

It seems worth preserving a way to get behavior #1, in case someone really wants it.

Would it be even more flexible and potentially useful if the following options were provided to callers of poll?

The current behavior, where the caller can specify a single device number to perform the poll operation on.
A new behavior, perhaps indicated by providing a new special named value as the device_number parameter to mean "all devices", that behaves as you suggest?

It seems worth preserving a way to get behavior 1, in case someone really wants it.

Thanks for help
Yes, behavior 1 is worth preserving.
For behavior 2, that's what I need, I agree with your proposal, when can reserve a special value for device_number to mean "all devices", as the "all port" is indicated by None, so I think None is a good option.

Are you willing to write a PR with a proposed change, for others to review?
Ideally it would be best if such a change was backwards compatible, i.e. except for the new case of device_number=None with new behavior, all existing cases should behave the same when device_number != None.

Are you willing to write a PR with a proposed change, for others to review?
Ideally it would be best if such a change was backwards compatible, i.e. except for the new case of device_number=None with new behavior, all existing cases should behave the same when device_number != None.

Yes, I'm happy to code that.
However, seems that there is no test in ptf repo, so I think it's better to patch ptf package in sonic repo, when the patch works fine and was tested with good quality, I will backport the patch to ptf repo.

Are you willing to write a PR with a proposed change, for others to review?
Ideally it would be best if such a change was backwards compatible, i.e. except for the new case of device_number=None with new behavior, all existing cases should behave the same when device_number != None.

Yes, I'm happy to code that.
However, seems that there is no test in ptf repo, so I think it's better to patch ptf package in sonic repo, when the patch works fine and was tested with good quality, I will backport the patch to ptf repo.

That sounds like a reasonable plan.


authentik: 2024.6.1 -> 2024.6.4

Description of changes
https://nvd.nist.gov/vuln/detail/CVE-2024-42490
Longer term this needs to be bumped to 2024.8.x, but my naive attempt ran into failures building the npm modules. Best left to maintainers probably.
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

Thanks. I will have a look at updating to .8.1 tomorrow

Someone removed the CI check for package integrity in upstream authentik, so the lockfiles are broken: https://github.com/goauthentik/authentik/pull/11509
Most likely the issue you were running into