[bug]:

Is there an existing issue for this?

[X] I have searched the existing issues.

CLI Version
0.2.6
Firebase Tools version
10.42
Flutter Doctor Output
[√] Flutter (Channel stable, 3.0.4, on Microsoft Windows [Version 10.0.19042.1889], locale en-US)
• Flutter version 3.0.4 at C:\Users\msiraj005\Downloads\flutter_windows_3.0.4-stable\flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 85684f9300 (3 months ago), 2022-06-30 13:22:47 -0700
• Engine revision 6ba2af10bb
• Dart version 2.17.5
• DevTools version 2.12.2
Checking Android licenses is taking an unexpectedly long time...[√] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
• Android SDK at C:\Users\msiraj005\AppData\Local\Android\sdk
• Platform android-33, build-tools 33.0.0
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
• All Android licenses accepted.
[√] Chrome - develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
[√] Visual Studio - develop for Windows (Visual Studio Professional 2019 16.11.16)
• Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional
• Visual Studio Professional 2019 version 16.11.32602.291
• Windows 10 SDK version 10.0.19041.0
[√] Android Studio (version 2021.2)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
[√] VS Code (version 1.71.2)
• VS Code at C:\Users\msiraj005\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.44.0
[√] Connected device (4 available)
• sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 12 (API 31) (emulator)
• Windows (desktop)            • windows       • windows-x64    • Microsoft Windows [Version 10.0.19042.1889]
• Chrome (web)                 • chrome        • web-javascript • Google Chrome 105.0.5195.102
• Edge (web)                   • edge          • web-javascript • Microsoft Edge 105.0.1343.33
[√] HTTP Host Availability
• All required HTTP hosts are available
Description
The CLI throws an error that 'git' is not recognized as an internal or external command, although i take necessary steps to install flutterfire CLI using command npm install -g firebase-tools / by standalone process.It make an error that this file cannnot be installed due to risk issues.
Steps to reproduce
flutterfire configure
'git' is not recognized as an internal or external command,
operable program or batch file.
i Found 0 Firebase projects.
FirebaseCommandException: An error occured on the Firebase CLI when attempting to run a command.
COMMAND: firebase --version
ERROR: The FlutterFire CLI currently requires the official Firebase CLI to also be installed, see https://firebase.google.com/docs/cli#install_the_firebase_cli for how to install it.
Expected behavior
When running  npm install -g firebase-tools command the CLI should properly install firebasetools.
Screenshots

Additional context and comments
No response

This is a problem with your environment setup and trying to install Firebase CLI. Not a FlutterFire CLI issue. This is the relevant repository.


Neorg support

Any plans to support neorg?

That's said, i am always getting this error
Error executing vim.schedule lua callback: ...ocal/share/nvim/lazy/hologram.nvim/lua/hologram/init.lua:47: Invalid buffer id: 1
stack traceback:
	[C]: in function 'nvim_buf_get_extmarks'
	...ocal/share/nvim/lazy/hologram.nvim/lua/hologram/init.lua:47: in function 'buf_render_images'
	...ocal/share/nvim/lazy/hologram.nvim/lua/hologram/init.lua:17: in function <...ocal/share/nvim/lazy/hologram.nvim/lua/hologram/init.lua:17>
1 line less; before #15  0 seconds ago

i was going open a issue...

Looks like image.nvim has neorg support if this is something you're still looking for.


Error message when entering Advanced Input Options

Describe the bug
When entering Advanced Input Options, the following message appears if playing in windowed mode:

(My Windows is in Spanish, bear with me)
The source of the problem is an overlook in the _fallback theme metrics:
[ScreenOptionsInput]
Fallback="ScreenOptionsServiceChild"
NextScreen="ScreenOptionsService"
PrevScreen="ScreenOptionsService"
LineNames="1,2,3,AH,4,5,6,7,8"
Line1="conf,AutoMapOnJoyChange"
Line2="conf,OnlyDedicatedMenuButtons"
Line3="conf,DelayedBack"
LineAH="conf,AllowHoldForOptions"
Line5="conf,ThreeKeyNavigation"
Line6="conf,MusicWheelSwitchSpeed"
Line7="conf,InputDebounceTime"
Line8="conf,AxisFix"

There's a 4 in LineNames but there's no Line4 defined afterwards.

Removed the line when cleaning arcade references, didn't test, and didn't remove the reference to the reference.
Fix: remove the 4

74da12993c19be8ea448d65ee26b3dbf210c0058


DEPRECATION: Using {{view}} or any path based on it

We need to fix deprecation warnings like this: DEPRECATION: Using {{view}} or any path based on it ('hospitalrun/appointments/calendar/template.hbs' @ L1:C0) has been deprecated. [deprecation id: view.keyword.view] See http://emberjs.com/deprecations/v1.x#toc_view-and-controller-template-keywords for more details.
at deprecatePath (/Users/jkleinsc/work/hospitalrun/frontend/bow

I'll take care of this one

These deprecation warnings should now be resolved.


Add Linux arm64 build and license files

Needed primarily for aarch64 builds targeting AWS Neoverse/Graviton. Compiled version 0.6.13 on CentOS 7 glibc-2.17 (seeming to be the earliest glibc version in public aarch64 AMIs) as:
yum install git bzip2 ocaml ocaml-findlib ocaml-camlp4-devel
git clone 'https://github.com/alavrik/piqi.git'
cd piqi
git checkout v0.6.13
make deps
make
make install
make test

Tested to run on Ubuntu 16.04, RHEL 7.6, Debian 9, Amazon Linux 2.
P.S. Later versions (0.6.15) do not compile thanks to the lack of opam on this platform (while the newly added dependencies like sedlex are not included in ./deps).
License files transferred as is from the source code repo (https://github.com/alavrik/piqi) to appease source code scanning tools.

Great! Thanks, Alexey. Weird that there's no opam on this thing.


Do release 0.1.0

[x] Update the readme
[x] Create a tag
[x] Publish to crates.io
[x] Test installing from crates.io and running - on mac, linux, pi
[x] Create release in GitHub with release notes
[ ] Mention in reddit for pi
[x] Mention in reddit for rust
[ ] mention in pi forums
[x] mention in iced discord showcase
[x] mention in rust-lang discord showcase

My original reddit post on raspberry_pi has been removed, and I have contacted


Consider using Storage SAS URI generation for training samples

The Storage team has made SAS URI generation much easier.  Instead of using a *SasBuilder, the happy path scenario in the latest GA release of Blobs looks like:
var blob = new BlobClient(ConnectionString, ContainerName, BlobName);
await blob.UploadAsync(LocalFilePath);
Uri sas = blob.GenerateSasUri(BlobSasPermissions.Read, DateTimeOffset.UtcNow.AddDays(1));

We can look into this for the training samples instead of asking the customer to upload their files and create the SAS token

Discussed offline.
In order to create a storage account on the fly, we'd still need to use ARM libraries, which falls outside the scope of what we wanted to use. We'd also need to ask users to provide credentials for creating or updating their storage accounts, which in the end is not that much better than asking for a SAS token.
Making the requirements for running the sample the same as the requirements for the actual service call (endpoint, credential, and SAS token) seems more intuitive. In other words, it could be misleading to ask for a Storage Account connection string in our samples when the Form Recognizer client itself does not require this piece of information in any of its service calls.


Add FlagKey as prometheus label in eval counter

usefull for human friendly dashboards

Codecov Report

Merging #55 (f9c2f02) into main (1694d8e) will decrease coverage by 0.03%.
The diff coverage is 50.00%.

@@            Coverage Diff             @@
##             main      #55      +/-   ##
==========================================
- Coverage   81.55%   81.51%   -0.04%
==========================================
  Files          27       27
  Lines        2174     2175       +1
==========================================
  Hits         1773     1773
- Misses        314      315       +1
  Partials       87       87

Impacted Files
Coverage Δ

pkg/handler/eval.go
86.41% <0.00%> (-0.36%)
:arrow_down:

pkg/config/config.go
78.75% <100.00%> (ø)

Continue to review full report at Codecov.

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


Update examples for adoptopenjdk

make JDKW_DIST work with jdk-wrapper 0.14.0 by changing it from adpt to adopt
update adopopenjdk API link in README.md to contain version parameter (currently their page_size parameter does not work and the default is 10, users therefore have to filter by version)

Thank you for the contribution!


QC for TMAs

If you haven't already, please read through our contributing guidelines before opening your PR
What is the purpose of this PR?
Closes #277.
Adds QC metric for TMAs, and for tissue wide-batch effects.
How did you implement your changes
Added helper functions for ranking TMAs and computing tissue QC metrics.
Added plotting functions for QC TMA metrics, and updated the batch effect plot functions.
Sample Figures from the TONIC  Cohort
TMA QC Plot

Violin Plot, for CD*

In addition, other notable changes include adding a Random number generator Fixture in conftest.py, so for any test, we can just add that fixture as a function argument like below:
def test_function_requries_random_numbers(rng: np.random.Generator):
    my_cool_random_numbers = rng.random(size=(10,))
    ...

Adjust some Pandas function calls to be Pandas 2.0 compatible (Notably you cannot pd.append DataFrames, you must pd.concat them). In the future we can take advantage of 2.0 features.
Dependency Modifications:

Bumped scipy to >=1.10.1
Added loguru as a dev dependency.

Remaining issues

[ ] Run the QC TMA on the Tonic Cohort
Ran into some issues w.r.t image_stitching.get_tiled_names where some FOVs would return    {"tonsil_bottom": "fov-1-scan-1"}

instead of say,    {"RnCm": "fov-1-scan-1"}

Is this expected behavior for some jsons?

Next Steps

Need to create a notebook which encapsulates all of these QC metrics (design doc needed)
Need to add QC metrics as a function of acquisition order (design doc needed)

This looks great. Can you open a new issue and self-assign for adding a ranks for the TMA-wide QC tissue ranks?
Right now, the only way to see if a specific TMA has a control sample that is higher (or lower) than all the others is to look by eye at the color of each dot and see if a specific colored dot is most often at the top or bottom of the violin. Having a way to automatically check this would be helpful.
I think you can copy what you did in the first part, averaging the rank across different markers. It would be useful to compute that same ranking for the control tissues. So instead of creating a rank across the 50 FOVs in an TMA, it would be across the 3 or 4 different LN_Top samples.

@camisowers Yeah the notebook will be the final PR for these extra QCs.

@ngreenwald How does the notebook look after these updates?


feat(dapp-console-api):claimDeploymentRebate endpoint

#276  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @tremarkley and the rest of your teammates on  Graphite


Use branch aliases

Composer supports branch aliases, so someone can ask for 2.7.*@dev, and get our master branch so they don't have to use the horrible dev-master hack.

I think travis will be another week on this one...


[BEAM-2455] Backlog size retrieval for Kinesis source

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify.
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

@jbonofre @davorbonaci @jkff, can you please take a look?

R: @jbonofre

Coverage increased (+0.01%) to 70.691% when pulling 84974b96f49a4a8b3b430185be75a761c135f913 on ocadotechnology:kinesis_backlog_size into 91c7d3d1f7d72e84e773c1adbffed063aefdff3b on apache:master.

Hi @jbonofre, did you have a chance to take a look at this PR?

On it pretty soon.

Hi @jbonofre, it's just a reminder ;)

R: @rangadi can you review this?

Thanks for your review @rangadi.
The only purpose of this backlog size counting is to enable autoscaling. Kinesis API does not provide any information about the remaining events in the stream so I had to use the CloudWatch service in order to get that info. I've also introduced the allowedRecordLateness parameter in order to limit the autoscaling when events are not that much late. It helped in our case when we observed workers count fluctuations due to temporary events bursts.

Replied inline comments in the code. I do see why you have 'threshold', my comment was mainly about the 'lateness' in the name.

Ok, I've just applied suggested changes. Can you please take a look?

Great, thanks @rangadi! So who can now merge this? @jbonofre?

Hi @pawel-kaczmarczyk, thanks for the updates. Could you ask someone familiar with KinesisIO to +1 overall solution? I don't know much about Kinesis.

@dhalperi @jkff Could you please review this PR? I'm not sure who else is familiar with this connector.

Also - @rtshadow wrote the original Kinesis connector; maybe he can help with this review too?

Coverage decreased (-0.7%) to 69.972% when pulling dd328a3bddbbaae6be357e31ee5d04481e7ab1ba on ocadotechnology:kinesis_backlog_size into 91c7d3d1f7d72e84e773c1adbffed063aefdff3b on apache:master.

Since https://github.com/apache/beam/pull/3851 is already merged, we can proceed with this one. I've rebased this PR on top of master and removed TODO comment. @jkff could you please take a look?

Coverage increased (+0.01%) to 69.538% when pulling e1d1959ba460adc7c7d635dee3fbeaae6d27241e on ocadotechnology:kinesis_backlog_size into 352f106f992a2ff4c08274685657242f04f967ef on apache:master.


Warn on leaving recordedit page with unsaved changes

Warn the user when he's about to leave the recordEdit page with unsaved changes.
Checked on Chrome, Firefox, Safari, and Edge. All 4 of them display their own messages and have stopped the support for displaying custom messages. (https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload#Browser_compatibility)
Stopped this event from triggering on form-submit event

We should have a test case for this that makes sure the notification shows up as we expect. Ideally it would be an e2e test (you should be able to seeing as $window is an angular component) but if not it can be added to the manual tests guide.


New interface for belief propagation decoder

Added Structs for BPSetup, BPDecoder, BPDecoderSparse
Added Methods for decode! and batchdecode!
Added Tests for above methods
Updated README.md, gitignore, project.toml

If you want to submit an unfinished piece of work in order to get comments and discuss, please mark the pull request as a draft and ping the repository maintainer
Before considering your pull request ready for review and merging make sure that all of the below are completed:

The code is properly formatted and commented.
Substantial new functionality is documented within the docs.
All new functionality is tested.
All changes and new functionality are marked in the CHANGELOG file.

Thank you Stefan! I will ping you after the doing the updates.

@Krastanov  I have pushed the suggested changes

And could you click "resolve" on comments of mine above that you have already dealt with. It helps me when I get back to this PR after looking at something else.

Check out the last commit I added here. It brings over a bunch more CI tooling. I added the static analysis tools JET.jl and Aqua.jl
Could you look into the spelling CI and the jet=true CI ?
In particular, JET is reporting the following:
┌ row_echelon(matrix::Any) @ LDPCDecoders /home/runner/work/LDPCDecoders.jl/LDPCDecoders.jl/src/util.jl:10
│┌ row_echelon(matrix::Any, full::Bool) @ LDPCDecoders /home/runner/work/LDPCDecoders.jl/LDPCDecoders.jl/src/util.jl:22
││ `LDPCDecoders.transform_matrix` is not defined: LDPCDecoders.transform_matrix
│└────────────────────
│┌ row_echelon(matrix::Any, full::Bool) @ LDPCDecoders /home/runner/work/LDPCDecoders.jl/LDPCDecoders.jl/src/util.jl:28
││ `LDPCDecoders.not` is not defined: goto %115 if not LDPCDecoders.not
│└────────────────────
│┌ row_echelon(matrix::Any, full::Bool) @ LDPCDecoders /home/runner/work/LDPCDecoders.jl/LDPCDecoders.jl/src/util.jl:55
││ `LDPCDecoders.transform_matrix` is not defined: Base.vect(row_esch_matrix, matrix_rank, LDPCDecoders.transform_matrix, LDPCDecoders.pivot_cols)
│└────────────────────


383 fe view individual blog posts

@mitkapanarin Just a reminder: We are creating branches from staging, and we are merging the PRs to staging. So when you create a PR you should choose the base to which you are merging to be staging.


Support to multiple controllers and controller handover

Description
The W3C DID standard states that a Subject/DID Document may have multiple controllers.
Motivation
This feature is very important for differentiating the roles of controllers using verifiable credentials.
It is also very useful for implementing the concept of "ownership" of an object identified by a DID: its controller is its owner.
It is therefore very important that IOTA Identity implements this part of the standard by ensuring that multiple controllers can be assigned to a Subject and that a new controller can take over from the previous one (ownership handover).
The onweship handover is very important for NFT. Today the common way to assign the ownership of an object identified by a unique token (NFT) is to send it to a new owner's address, but the addresses do not actually represent the owner, but rather who controls the private key. This can change hands without evidence and this makes the NFT model unsuitable for applications on real (non-digital) goods.
Using DID and being able to manage a handover, the constructor of the object (physical or digital) can assign a DID and then assign to the buyer the ownership of the object making it become the controller of the DID.  The object can still be represented by a token that is minted. Using the same keys used to create the DID of the creator of the object, you get a unique address linked to the original creator and owner who can decide to send the token to an address specified by the new owner or define it only the controller of the DID of the object. This second case allows you to represent the loan of objects, without the need to use a smartcontract
DIDs can be assigned verifiable credentials that make real the identity of the creators and owners of the objects.
Requirements
Write a list of what you want this feature to do.

add more controllers
allow a controller to remove himeself from a document
allow a controller to remove other controllers form a document

Are you planning to do it yourself in a pull request?
No

Will be implemented with #306 and is therefore a duplicate. Thanks for the additional info!


Update test for OCaml 4.07.0

Great. I didn't know the stack trace is changed since 4.07. Thanks!

@314eter Thank you for several patches. The next release includes your PRs #96-#99.


fix: zero duration pieces breaking ab resolver

This PR is being opened on behalf of TV 2 Norge.

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

bug fix

What is the current behavior? (You can also link to an open issue here)

Sofie resolves the piece timeline, to be able to provide concrete times to the ab resolved, onTimelineGenerate and other places.
If a piece is resolved to have a duration of 0, that gets lost during the resolving, so that it ends up with no duration.

What is the new behavior (if this is a feature change)?

It now treats a duration of 0 as a valid value, preserving it rather than replacing it with undefined.

Other information:

Some minor tweaks have been made so that lookahead ab sessions use a start time that is json serializable, as this confused us while debugging due to infinity being converted to null when stringified for json
Status

[ ] Code documentation for the relevant parts in the code have been added/updated by the PR author
[x] The functionality has been tested by the PR author
[ ] The functionality has been tested by NRK

As this area has been rewritten in r51 by #983, I have added a test to confirm it is working there https://github.com/nrkno/sofie-core/commit/13c881ded38ad74c1689be5a8430d0fc824ca1b3. It was already fixed by the changes in #983


ngx-jodit-pro: Icons are not being rendered

What version of the package? 3.0.0.beta.1
What Angular version are you using? Angular 16

So I'm using ngx-jodit-pro in an app with Angular 16 + esbuild and I noticed the icons aren't being rendered correctly:

I'm also having problems making the plugins to work, for example the page-break plugin. This is my angular.json:
"styles": [
                    (...)
                    "./node_modules/jodit-pro/es2021/jodit.fat.min.css"
                ],
                "scripts": [
                    "./node_modules/jodit-pro/es2021/jodit.js",
                    "./node_modules/jodit-pro/es2021/plugins/page-break/page-break.js"
                ]

I think I'm importing everything it needs but for some reason still not rendering the icons and the plugins are not working. Let me know if you need more info to reproduce it. But I have a very basic example in my code.
// options: "buttons": "bold,italic,underline",
<ngx-jodit-pro
                            *ngIf="value"
                            [(value)]="value"
                            [options]="options"
                        />

Am I missing something in this setup?

thank you for reporting this issue! I solved it by reverting the commit related to typings for options. I thought I could use typings from the Jodit package but this caused the problem.
I just released 3.0.0-beta.2 which should fix this issue 😄

That fixed my issue, thanks again @julianpoemp !


Extensible transactions (and tips)

This removes a lot of logic from the executive into the modules, which is good because it should never have been there in the first place. I also added tips to the payment mechanism, which is trivial now.
I removed the historical variants of UncheckedExtrinsic and MakePayment.
This changes the transaction format; for now it is:

Address
Signature
Era
Nonce
Tip (Balance)
Call

The signature payload is:

Call
Era
Nonce
Tip (Balance)
Checkpoint hash (or genesis hash for immortal transactions)

TODO

[x] Make sure the nonce and tip is compact encoded.
[x] Make tests work again. @Kianenigma #3138
[x] Move the block-weight-check into an extensibility trait. @Kianenigma #3115
[x] Bring weight-to-fee stuff back. @Kianenigma #2854
[x] Fix extrinsic priority based on tip + type of the transaction. @Kianenigma #3138

Maybe a different PR, maybe not.

[x] Charge transaction size independently from weight. (done in #3138; needs #2854)
[x] Limit block size separately from block weight. (done in #3138)
[ ] Add more tests for subkey and factory to make sure they are always creating txs with correct, decodable and verifiable signatures.

Maybe do, maybe don't:

[x] Consider moving all the signing stuff into an extensibility trait (won't do - signing is too intrinsic to a transaction).
[x] Consider moving the era stuff into an extensibility trait (done).
[x] Consider moving the validate-unsigned stuff into an extensibility trait (won't do - validate-unsigned is a per-module thing, which doesn't work with an attribute-system like SignedExtension).

CC @Kianenigma

I put some leftover tasks/todos/thoughts there myself. Except for the last one about removing x / 4 the rest looks okay.

@Kianenigma don't forget the issue for the TODO. then once it's reviewed by a third person is can be merged.

Merging by the end of today if no one else reacts.


Requirements files

It will probably be easier to maintain two different requirements files: requirements.txt and requirements.dev.txt for the production package and development package respectively.
I see that you have a requirements.sh which seems to have commands for different CUDA versions. I think the users can be referred to the respective dependency doc and remove the burden from CoLA to explain those details.
In the final requirements.txt, you can keep un-versioned PyTorch/JAX so that it doesn't interfere with the dependency parsing as long it is installed.
When published to PyPI, the user installs can look like:
pip install cola

and the development installs can look like:
pip install cola[dev]

(this can be achieved by using the extras_require: { "dev": ["pytest", ...] } in the setuptools configuration (just like the install_requires list).

definitely. We should move pytest to the optional [dev] dependency and add in the appropriate version of jax and pytorch. (requirement.sh is not meant to be run at the moment)


TimePicker theme not getting applied to children

It seems like the TimePicker component is not correctly passing down its theme to its children.
It looks like the destructuring of theme in line 62 of TimePicker means it does not get splatted down in line 67.
If you compare with DatePicker, it does not get destructured in line 71 so it does get splatted in line 79.

Created PR #661 to address this issue. Thanks for all your work on this project!

Merged! Thanks @conroywhitney :)


Implement output to monitoring solution

Could be jmx, snmp, etc.
consider https://www.suse.com/communities/conversations/application-monitoring-made-easy-java-applications-using-nagios/

Just came across this ENISA report that lists many different information sharing formats. I mention some of those in the AppSensor Guide, but will update that to reference whatever we do in the code.
https://www.enisa.europa.eu/activities/cert/support/actionable-information/standards-and-tools-for-exchange-and-processing-of-actionable-information

Added a couple of releases to this branch: https://github.com/jtmelton/appsensor/tree/dev-v2.1 . Added to build here: https://github.com/jtmelton/appsensor/commit/d8b349b0b7ba32911d0b4cc9061edf362269b070
Will close this issue when 2.1 is released.

Closed with https://github.com/jtmelton/appsensor/releases/tag/v2.1.0


Add Ubuntu 24.04 Noble Numbat

Tool name
ubuntu
Tool license
OSS
Add or update?

[X] Add
[ ] Update

Desired version
24.04
Approximate size
No response
Brief description of tool
No response
URL for tool's homepage
No response
Provide a basic test case to validate the tool's functionality.
No response
Platforms where you need the tool

[ ] Azure DevOps
[ ] GitHub Actions

Runner images where you need the tool

[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] macOS 11
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[ ] Windows Server 2019
[ ] Windows Server 2022

Can this tool be installed during the build?
No response
Tool installation time in runtime
No response
Are you willing to submit a PR?
No response

The release is still planed on April 25th

Hopefully it will before august 9 :D
Ubuntu 22.04 announce message: https://github.blog/changelog/2022-08-09-github-actions-ubuntu-22-04-is-now-generally-available-on-github-hosted-runners/

@TomKeur the announcement you pointed at is about GA, GA will be somewhere in August I think, but public beta is mid-May

Awesome, thanks for the heads up! 👍

I'm interested to know if this will regress the .net 8 SDK version to 8.1xx, rather than the current 8.2xx given the changes in .net provision in Ubuntu 24.04
See the MS post here where I have also commented:

The release is still planed on April 25th

Hi @mikhailkoliada
Any update on when release will be made ??

@vishalkhode1 as stated in my previous comment we plan to release it public beta mid May :)

@mikhailkoliada
Is the Ubuntu 24.04 LTS runner supposed to be live already?
I can see it in the overview on GitHub Actions Runner Images with YAML Label ubuntu-24.04.
If I try to use it I'm seeing it hang:
Requested labels: ubuntu-24.04
Job defined at: xxxx
Waiting for a runner to pick up this job...

@MikeMcC399 not yet, there will be a separate announcement once everything is available, we are just in the process of setting things up, that is why readme is there.

@mikhailkoliada
Thanks for confirming the status! Looking forward to the announcement as soon as you're ready! 👍🏻

Should be here now: https://github.com/actions/runner-images/issues/9848

_****_madny

~I'm interested to know if this will regress the .net 8 SDK version to 8.1xx, rather than the current 8.2xx given the changes in .net provision in Ubuntu 24.04~
~See the MS post here where I have also commented.~
Update: answered very quickly, so no worries.

My fear came true, the new image only has .net 8.10x SDK so has broken some of our builds that depended on the later SDK versions

This appears to be the guidance. Does it not work?

It will work but will increase the time/cost of every one of our 100s of builds. It means that GitHub hosted runners are no longer the batteries included option.


added migs refund support

implemented MIGS refund and tested with live MIGS account

Great I have been waiting for this since ever


Remove the english words that does not appear in the dictionary

You will find a lot of 5-letter words in lib/constants/words.dart.
Your task is to remove those words that on googling do not appear in the dictionary.
You can help by removing as many words as you can.

I'll try. I'll use the yandex dictionary api to check valid words and double check all of the words that don't show up.

How strict should the checking be @samitkapoor ? Should obscure or archaic words/conjugations of words be included, like brans, tippy, or blest? Should proper nouns like jutes or tommy be excluded? Or should I only exclude words that are definitely not in the dictionary?

Hey @iskhakov-s !
Archaic words should not be there.
Conjugations are allowed.
Proper nouns are not allowed.
Definitely remove the words that are not a part of dictionary.


[Idea] Make console commands environment "aware"

This is just an idea, but I'll try to explain it well: I think it would be great to have the list of your commands when typing php artisan based on the current environment. Indeed, when you are in production, you don't really need the make commands and It's in my case sometimes difficult to fetch threw the list (I use | grep  to achieve this). I wanted to talk about it with Taylor at the last Laracon EU but couldn't find time ;)
Let me know what you guys think about it.
Cheers!

Thank you, but for suggestions and feature requests please use the https://github.com/laravel/internals repo :)


Visualization Bug - AttributeError: function 'glGetUniformLocation' not found

Visualizing the elastic dragon example on Windows:
(venv) PS S:\Tools\genesis> py .\elastic_dragon.py --vis
[Genesis] [21:41:21] [INFO] Running on [NVIDIA GeForce RTX 3090 Ti] with backend gs.cuda. Device memory: 23.99 GB.
[Genesis] [21:41:22] [DEBUG] [Taichi] version 1.7.2, llvm 15.0.1, commit 0131dce9, win, python 3.10.5
[Genesis] [21:41:22] [DEBUG] [Taichi] Starting on arch=cuda
[Genesis] [21:41:22] [INFO] 🚀 Genesis initialized. 🔖 version: 0.2.0, 🌱 seed: None, 📏 precision: '32', 🐛 debug: False, 🎨 theme: 'dark'.
[Genesis] [21:41:22] [INFO] Scene <2463c84> created.
[Genesis] [21:41:22] [INFO] Adding <gs.PBD3DEntity>. idx: 0, uid: <e6ec9b0>, morph: <gs.morphs.Mesh(file='S:\Tools\genesis\venv\lib\site-packages\genesis\assets\meshes/dragon/dragon.obj')>, material: <gs.PBD.Elastic>.
[Genesis] [21:41:22] [DEBUG] Remeshed file (`.rm`) found in cache.
[Genesis] [21:41:23] [INFO] Building scene <2463c84>...
[Genesis] [21:41:25] [INFO] Compiling simulation kernels...
[Genesis] [21:41:30] [INFO] Building visualizer...
Traceback (most recent call last):
  File "S:\Tools\genesis\elastic_dragon.py", line 58, in <module>
    main()
  File "S:\Tools\genesis\elastic_dragon.py", line 49, in main
    scene.build()
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\utils\misc.py", line 38, in wrapper
    return method(self, *args, **kwargs)
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\engine\scene.py", line 556, in build
    self._visualizer.build()
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\vis\visualizer.py", line 101, in build
    self._context.build(self._scene)
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\vis\rasterizer_context.py", line 70, in build
    self.jit = JITRenderer(self._scene, [], [])
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\ext\pyrender\jit_render.py", line 201, in __init__
    self.gen_func_ptr()
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\ext\pyrender\jit_render.py", line 354, in gen_func_ptr
    self.gl = GLWrapper()
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\ext\pyrender\numba_gl_wrapper.py", line 24, in __init__
    load_func("glGetUniformLocation", GLint, GLuint, GLvoidp)
  File "S:\Tools\genesis\venv\lib\site-packages\genesis\ext\pyrender\numba_gl_wrapper.py", line 52, in load_func
    func_ptr = GL.platform.ctypesloader.buildFunction(
  File "S:\Tools\genesis\venv\lib\site-packages\OpenGL\platform\ctypesloader.py", line 96, in buildFunction
    return functionType( (name, dll), )
AttributeError: function 'glGetUniformLocation' not found
[Genesis] [21:41:30] [INFO] 💤 Exiting Genesis and caching compiled kernels...

causes an AttributeError.
Works fine without the --vis flag.

I met the same problem

same problem here

Is everyone here using Windows?

Is everyone here using Windows?

Here is win11

same problem
using win11

https://genesis-world.readthedocs.io/en/latest/user_guide/overview/installation.html
Based on our test, rendering is not supported on Windows due to OpenGL issues.
It would be super appreciated if someone could find a solution. Otherwise, Linux or macOS are the only platforms supporting rasterization.

I added a small try/except feature in the 'load_func()' function in numba_gl_wrapper.py.
Here is the list of libraries that can be loaded successfully or not. I hope it helps.

Failed to load glGetUniformLocation: function 'glGetUniformLocation' not found
Failed to load glUniformMatrix4fv: function 'glUniformMatrix4fv' not found
Failed to load glUniform1i: function 'glUniform1i' not found
Failed to load glUniform1f: function 'glUniform1f' not found
Failed to load glUniform2f: function 'glUniform2f' not found
Failed to load glUniform3fv: function 'glUniform3fv' not found
Failed to load glUniform4fv: function 'glUniform4fv' not found
Failed to load glBindVertexArray: function 'glBindVertexArray' not found
Failed to load glActiveTexture: function 'glActiveTexture' not found
Loaded glBindTexture successfully.
Loaded glEnable successfully.
Loaded glDisable successfully.
Loaded glBlendFunc successfully.
Loaded glPolygonMode successfully.
Loaded glCullFace successfully.
Failed to load glDrawElementsInstanced: function 'glDrawElementsInstanced' not found
Failed to load glDrawArraysInstanced: function 'glDrawArraysInstanced' not found
Failed to load glUseProgram: function 'glUseProgram' not found
Loaded glFlush successfully.
Loaded glReadPixels successfully.
Failed to load glBindBuffer: function 'glBindBuffer' not found
Failed to load glBufferData: function 'glBufferData' not found
Failed to load glBufferSubData: function 'glBufferSubData' not found

I met the same problem in Win10.
I found that in pyrender/numba_gl_wrapper.py/load_func, the variable dll pointed at 'C:\WINDOWS\system32\opengl32.dll', which we know that windows only support OpenGL1.1, but what we need is OpenGL2.0 or later. so is there anyone know, how to change the default OpenGL version that dll = GL.platform.PLATFORM.GL pointed at?
Another interest thing is, code above can work:
python
>>> from OpenGL.GL import glGetUniformLocation as a
>>> from OpenGL.GL import glActiveTexture as b
>>> a
OpenGL.lazywrapper.lazy( 'glGetUniformLocation' )
>>> b
<OpenGL.platform.baseplatform.glActiveTexture object at 0x000002845FD4C550>

So I wonder if there's a way that we just import those function directly instead of load them from load_func?

Same Problem

Lame. I spent a while trying to get this to run. This is the blocking error.
Should put a warning on the repo that it doesn't work on windows 11 currently

We can make a workaround, but simpler and slower, for Windows visualization by modifying elastic_dragon.py --vis to render a GIF using matplotlib instead of OpenGL.

Add imports at top:

import matplotlib.pyplot as plt, imageio, io

Disable OpenGL viewer:

show_viewer=False

Replace simulation loop visualization:

for i in range(horizon):
    scene.step()

with
if args.vis:
    # Pre-create figure once
    fig = plt.figure(figsize=(8, 8), dpi=100)
    ax = fig.add_subplot(111, projection='3d')
    frames = []

    for i in range(horizon):
        scene.step()
        if i % 20 == 0:
            # Get positions and update scatter plot
            pos = scene.get_state()._solvers_state[5]._pos.cpu().numpy()
            ax.clear()  # Clear previous frame
            ax.scatter(pos[:, 0], pos[:, 1], pos[:, 2], c='red', s=1)

            # Capture frame directly to memory
            buf = io.BytesIO()
            fig.savefig(buf, format='png')
            buf.seek(0)
            frames.append(imageio.imread(buf))
            buf.close()

    plt.close()
    imageio.mimsave('simulation.gif', frames, fps=10)

Lame. I spent a while trying to get this to run. This is the blocking error.
Should put a warning on the repo that it doesn't work on windows 11 currently

the compatibility matrix here on the docs does say that windows viewer is not supported. however adding camera is not supported also

I met the same problem in Win10.
I found that in pyrender/numba_gl_wrapper.py/load_func, the variable dll pointed at 'C:\WINDOWS\system32\opengl32.dll', which we know that windows only support OpenGL until version 1.1, but what we need is OpenGL2.0 or later. so is there anyone know, how to change the default OpenGL version that dll = GL.platform.PLATFORM.GL pointed at?
Another interesting thing is, the following code can work:
python
>>> from OpenGL.GL import glGetUniformLocation as a
>>> from OpenGL.GL import glActiveTexture as b
>>> a
OpenGL.lazywrapper.lazy( 'glGetUniformLocation' )
>>> b
<OpenGL.platform.baseplatform.glActiveTexture object at 0x000002845FD4C550>

So I wonder if there's a way that we just import those function directly instead of load them from load_func?

the OpenGL.lazywrapper.lazy( 'glGetUniformLocation' ) upon calling raises NullFunctionError: Attempt to call an undefined function glGetUniformLocation, check for bool(glGetUniformLocation) before calling, seems like the lazy wrapper can't find the symbol during runtime

same problem, GPU:nvidiaRTX3070ti
C:\Users\32653\PycharmProjects\PythonProject.venv\Scripts\python.exe C:\Users\32653\PycharmProjects\PythonProject\main.py
[Genesis] [19:00:39] [INFO] ╭───────────────────────────────────────────────╮
[Genesis] [19:00:39] [INFO] │┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈ Genesis ┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈│
[Genesis] [19:00:39] [INFO] ╰───────────────────────────────────────────────╯
[Genesis] [19:00:39] [INFO] Running on [Intel64 Family 6 Model 154 Stepping 3, GenuineIntel] with backend gs.cpu. Device memory: 31.68 GB.
[Genesis] [19:00:39] [INFO] 🚀 Genesis initialized. 🔖 version: 0.2.0, 🌱 seed: None, 📏 precision: '32', 🐛 debug: False, 🎨 theme: 'dark'.
[Genesis] [19:00:39] [INFO] Scene <1c2da54> created.
[Genesis] [19:00:39] [INFO] Adding <gs.RigidEntity>. idx: 0, uid: , morph: <gs.morphs.Plane>, material: <gs.materials.Rigid>.
[Genesis] [19:00:39] [INFO] Adding <gs.RigidEntity>. idx: 1, uid: , morph: <gs.morphs.MJCF(file='C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\assets\xml/franka_emika_panda/panda.xml')>, material: <gs.materials.Rigid>.
[Genesis] [19:00:40] [INFO] Building scene <1c2da54>...
[Genesis] [19:00:52] [INFO] Compiling simulation kernels...
[Genesis] [19:01:07] [INFO] Building visualizer...
Traceback (most recent call last):
File "C:\Users\32653\PycharmProjects\PythonProject\main.py", line 10, in
scene.build()
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\utils\misc.py", line 38, in wrapper
return method(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\engine\scene.py", line 556, in build
self._visualizer.build()
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\vis\visualizer.py", line 101, in build
self._context.build(self._scene)
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\vis\rasterizer_context.py", line 70, in build
self.jit = JITRenderer(self._scene, [], [])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\ext\pyrender\jit_render.py", line 201, in init
self.gen_func_ptr()
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\ext\pyrender\jit_render.py", line 354, in gen_func_ptr
self.gl = GLWrapper()
^^^^^^^^^^^
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\ext\pyrender\numba_gl_wrapper.py", line 24, in init
load_func("glGetUniformLocation", GLint, GLuint, GLvoidp)
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\genesis\ext\pyrender\numba_gl_wrapper.py", line 52, in load_func
func_ptr = GL.platform.ctypesloader.buildFunction(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\32653\PycharmProjects\PythonProject.venv\Lib\site-packages\OpenGL\platform\ctypesloader.py", line 96, in buildFunction
return functionType( (name, dll), )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: function 'glGetUniformLocation' not found
[Genesis] [19:01:08] [INFO] 💤 Exiting Genesis and caching compiled kernels.

I have made some attempts, personally think it should be the problem of PyOpenGL library, PyOpenGL installed directly on 64-bit windows by pip will lack dll files, this problem can be solved, so that PyOpenGL can run normally in other programs. However, the source code seems to use ctypes to load 32-bit dll files, 64-bit python will not find the file, but install 32-bit python will not be able to use "pip install genesis-world", perhaps on linux to solve these problems.

same problem
using win11

same problem using win11
so which example in here can we run on windows 11 ?

maybe should try wglGetProcAddress to get the opengl func ptr

Using glfw making it works now...

Using glfw making it works now...

Hello. It stops there.

Using glfw making it works now...

In this way, although the image cannot be obtained directly at present, the particle position of some routines has actually been generated and can be visualized by plt

Test program code:
import torch
import matplotlib.pyplot as plt
import genesis as gs
all_particles = []
def main():
########################## init ##########################
gs.init()
########################## create a scene ##########################

scene = gs.Scene(
    sim_options=gs.options.SimOptions(
        dt=4e-3,
        substeps=10,
    ),
    sph_options=gs.options.SPHOptions(
        lower_bound=(-0.5, -0.5, 0.0),
        upper_bound=(0.5, 0.5, 1),
        particle_size=0.01,
    ),
    vis_options=gs.options.VisOptions(
        visualize_sph_boundary=True,
    ),
    show_viewer=True,
)

########################## entities ##########################
plane = scene.add_entity(
    morph=gs.morphs.Plane(),
)

liquid = scene.add_entity(
    # viscous liquid
    # material=gs.materials.SPH.Liquid(mu=0.02, gamma=0.02),
    material=gs.materials.SPH.Liquid(),
    morph=gs.morphs.Box(
        pos=(0.0, 0.0, 0.65),
        size=(0.4, 0.4, 0.4),
    ),
    surface=gs.surfaces.Default(
        color=(0.4, 0.8, 1.0),
        vis_mode='particle',
    ),
)

########################## build ##########################
scene.build()

gs.tools.run_in_another_thread(fn=run_sim, args=(scene, False, liquid))

#scene.viewer.start()

def run_sim(scene, enable_vis, liquid):
global all_particles
i = 0
while True:
i += 1
    scene.step()
    particles = liquid.get_particles()
    # print(particles)
    '''
    [-4.8954931e-01  3.9647943e-01  2.0921452e-02]
    [-2.9889485e-01 -3.5985804e-01  2.3578152e-03]
    [-3.0421656e-01  5.0000000e-01  9.5947198e-06]
    '''

    all_particles.append(particles)
    if i > 10:
        break

if enable_vis:
    scene.viewer.stop()

main()
while True:
if len(all_particles) == 10:
for particles in all_particles:
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.scatter(particles[:, 0], particles[:, 1], particles[:, 2])
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
plt.show()
    plt.show()

same problem here

Using glfw making it works now...

Still have the problem

same problem here

same issue with win 11, cuda 12.4, rtx4090 - if the camera/viewer is the part unsupported on windows, how can I run a simulation using genesis and access the data (via spout lookup to the same gpu memory address, ideally) so that I can render it in a separate process? all the example code for simulations (SPH, etc) includes the scene.build() line, which is what triggers the aforementioned issue. how should we run a simulation without using scene.build()?

Could we rely on PyOpenGL’s Automatic Loading? Based on an earlier comment
A straightforward “fix” in Python is to rely on PyOpenGL to load extensions for you. Once you’ve created a modern OpenGL context (for example, using GLFW and specifying a minimum core profile version like 3.3), you can:
import glfw
from OpenGL.GL import glGetUniformLocation, glUseProgram, ...
Create a window and context
glfw.init()
glfw.window_hint(glfw.CONTEXT_VERSION_MAJOR, 3)
glfw.window_hint(glfw.CONTEXT_VERSION_MINOR, 3)
glfw.window_hint(glfw.OPENGL_PROFILE, glfw.OPENGL_CORE_PROFILE)
window = glfw.create_window(800, 600, "OpenGL Window", None, None)
glfw.make_context_current(window)
Now PyOpenGL will be able to load modern functions
location = glGetUniformLocation(some_program, b"uniformName")
Under the hood, PyOpenGL uses the current context and calls wglGetProcAddress to load entry points for functions not found in opengl32.dll. This typically means you don’t have to do any manual symbol loading yourself, as PyOpenGL mimics what GLEW does in C/C++.
Another option is to get the pointers manually Using wglGetProcAddress with ctypes
If you really want to replicate GLEW-like behavior manually:
First, ensure you have a valid, current OpenGL context created by something like GLFW or any other windowing toolkit that can provide a modern context.
Import the necessary functions and DLLs:
import ctypes
Load the system OpenGL library
opengl32 = ctypes.windll.opengl32
Get the wglGetProcAddress function
wglGetProcAddress = opengl32.wglGetProcAddress
wglGetProcAddress.restype = ctypes.c_void_p
wglGetProcAddress.argtypes = [ctypes.c_char_p]
After making the context current:
func_ptr = wglGetProcAddress(b"glGetUniformLocation")
if not func_ptr:
raise RuntimeError("Failed to load glGetUniformLocation!")
Once you have the function pointer, you convert it into a callable Python function using ctypes.CFUNCTYPE. For example:
Define a Python signature for glGetUniformLocation
GLGetUniformLocationType = ctypes.CFUNCTYPE(
ctypes.c_int,     # return type GLint
ctypes.c_uint,    # GLuint program
ctypes.c_char_p   # const GLchar *name
)
glGetUniformLocation = GLGetUniformLocationType(func_ptr)
Now you can call glGetUniformLocation just like a normal Python function
location = glGetUniformLocation(program, b"myUniform")
This mimics what GLEW does in C/C++: querying the driver for a function pointer and then wrapping it for convenient use.
A valid context is needed because  wglGetProcAddress only works when there’s a current OpenGL context that supports the requested function. If you call it before making the context current or if you have an incompatible context (e.g., too old), it will return None.
Maybe I'm misunderstanding the implementation here but why can't we just use a more modern method to load PyOpenGL. PyOpenGL’s extension loading process is very similar to what GLEW does, but it’s done automatically after you create a modern context and import from OpenGL.GL. That’s why the real fix is usually just to create a proper modern OpenGL context, then rely on PyOpenGL’s from OpenGL.GL import ... approach instead of manually loading symbols.
Can anyone clarify why we can't just do something like:
import OpenGL.GL as GL
from OpenGL.GL import glGetUniformLocation
Instead of manually loading?

has anyone tried running it on WSL?

Can be workarounded using MESA.

Short answer

Download Mesa OpenGL32.dll from here: https://github.com/lightningterror/mesa3D-Windows/releases (not the official source, but avoid compiling it by yourself).
Put it so that it is found before Windows/System32/openGL32.dll. If you use python venv, you can put it in venv/script.
Comment the gs.raise_exception in venv\Lib\site-packages\genesis\vis\viewer.py line 67

Long answer
OpenGL is not strickly speaking a library. It is a spec which is implemented by some other parties, especially by GPU vendors in the driver. Historically, Windows has implemented this library at the begining, but stopped at OpenGL 1.2. That's why glGetUniformLocation symbole is not present in windows's OpenGL.dll as glGetUniformLocation has been introducedd in OpenGL 2.x
MESA is a CPU implementation of OpenGL spec. Meaning, it defines and implement all the symboles but the code will be executed on CPU, instead of GPU. Meaning performences will lower.
Real fix would be to load OpenGL symboles from the GPU driver instead of Windows OpenGL32.dll. In C/C++ this is done typically using GLEW. However, I don't know how to proceed in python.

I tried this method and I also had to change the name of the opengl32.dll under C:\Windows\System32 to make the code load the MESA dll, and it is still now showing a viewer or anything just the fps

has anyone tried running it on WSL?

you mean using  a docker image supports opengl?

Can be workarounded using MESA.

Short answer

Download Mesa OpenGL32.dll from here: https://github.com/lightningterror/mesa3D-Windows/releases (not the official source, but avoid compiling it by yourself).
Put it so that it is found before Windows/System32/openGL32.dll. If you use python venv, you can put it in venv/script.
Comment the gs.raise_exception in venv\Lib\site-packages\genesis\vis\viewer.py line 67

Long answer
OpenGL is not strickly speaking a library. It is a spec which is implemented by some other parties, especially by GPU vendors in the driver. Historically, Windows has implemented this library at the begining, but stopped at OpenGL 1.2. That's why glGetUniformLocation symbole is not present in windows's OpenGL.dll as glGetUniformLocation has been introducedd in OpenGL 2.x
MESA is a CPU implementation of OpenGL spec. Meaning, it defines and implement all the symboles but the code will be executed on CPU, instead of GPU. Meaning performences will lower.
Real fix would be to load OpenGL symboles from the GPU driver instead of Windows OpenGL32.dll. In C/C++ this is done typically using GLEW. However, I don't know how to proceed in python.

I tried this method and I also had to change the name of the opengl32.dll under C:\Windows\System32 to make the code load the MESA dll, and it is still now showing a viewer or anything just the fps

I tried this method and I also had to change the name of the opengl32.dll under  venv/script to make the code load the MESA dll, and it show the fps but still not showing a viewer.

Can be workarounded using MESA.

Short answer

Download Mesa OpenGL32.dll from here: https://github.com/lightningterror/mesa3D-Windows/releases (not the official source, but avoid compiling it by yourself).
Put it so that it is found before Windows/System32/openGL32.dll. If you use python venv, you can put it in venv/script.
Comment the gs.raise_exception in venv\Lib\site-packages\genesis\vis\viewer.py line 67

Long answer
OpenGL is not strickly speaking a library. It is a spec which is implemented by some other parties, especially by GPU vendors in the driver. Historically, Windows has implemented this library at the begining, but stopped at OpenGL 1.2. That's why glGetUniformLocation symbole is not present in windows's OpenGL.dll as glGetUniformLocation has been introducedd in OpenGL 2.x
MESA is a CPU implementation of OpenGL spec. Meaning, it defines and implement all the symboles but the code will be executed on CPU, instead of GPU. Meaning performences will lower.
Real fix would be to load OpenGL symboles from the GPU driver instead of Windows OpenGL32.dll. In C/C++ this is done typically using GLEW. However, I don't know how to proceed in python.

I tried this method and I also had to change the name of the opengl32.dll under C:\Windows\System32 to make the code load the MESA dll, and it is still now showing a viewer or anything just the fps

I tried this method and I also had to change the name of the opengl32.dll under venv/script to make the code load the MESA dll, and it show the fps but still not showing a viewer.

I have the same problem.Follow all the steps,run successfully,but have no viewer shown.

has anyone tried running it on WSL?

you mean using a docker image supports opengl?

No just WSL the comes with Windows. I have been using it for my own project and it was working nicely as a linux system. However, it doesn't work on Genesis.

Can be workarounded using MESA.

Short answer

Download Mesa OpenGL32.dll from here: https://github.com/lightningterror/mesa3D-Windows/releases (not the official source, but avoid compiling it by yourself).
Put it so that it is found before Windows/System32/openGL32.dll. If you use python venv, you can put it in venv/script.
Comment the gs.raise_exception in venv\Lib\site-packages\genesis\vis\viewer.py line 67

Long answer
OpenGL is not strickly speaking a library. It is a spec which is implemented by some other parties, especially by GPU vendors in the driver. Historically, Windows has implemented this library at the begining, but stopped at OpenGL 1.2. That's why glGetUniformLocation symbole is not present in windows's OpenGL.dll as glGetUniformLocation has been introducedd in OpenGL 2.x
MESA is a CPU implementation of OpenGL spec. Meaning, it defines and implement all the symboles but the code will be executed on CPU, instead of GPU. Meaning performences will lower.
Real fix would be to load OpenGL symboles from the GPU driver instead of Windows OpenGL32.dll. In C/C++ this is done typically using GLEW. However, I don't know how to proceed in python.

I tried this method and I also had to change the name of the opengl32.dll under C:\Windows\System32 to make the code load the MESA dll, and it is still now showing a viewer or anything just the fps

I tried this method and I also had to change the name of the opengl32.dll under venv/script to make the code load the MESA dll, and it show the fps but still not showing a viewer.

Yes, same here.
I tried the 2nd example but ended up in a deadlock in render() method. After digging, it seems on non unix, because of threading issues, you should use this method and manually create a render thread.
I scratch the code a bit to try to make it works on Windows but always end up with that missing glGetUniform error. It seems Genesis need a small rework on how to handle OpenGL, like it was suggested by @supraxylon .

same issue with win 11, cuda 12.4, rtx4090 - if the camera/viewer is the part unsupported on windows, how can I run a simulation using genesis and access the data (via spout lookup to the same gpu memory address, ideally) so that I can render it in a separate process? all the example code for simulations (SPH, etc) includes the scene.build() line, which is what triggers the aforementioned issue. how should we run a simulation without using scene.build()?

You can try the MESA workaround I described. Rendering doesn't work but it seems simulation is running. You may manage to get the result of simulation and inject it in another renderengine.

maby can try Vulkan

thanks you all

I’m on Windows 11 using genesis-world (v0.2.0). When I try [hello genesis](https://genesis-world.readthedocs.io/en/latest/user_guide/getting_started/hello_genesis.html) set show_viewer=True in scene = gs.Scene(...), I get an “AttributeError: function ‘glGetUniformLocation’ not found.” My code runs the CPU-based physics fine, but OpenGL visualization fails.
I tried several fixes after researching and getting help from o1:

Installing PyOpenGL-accelerate and verifying pyopengl version (3.1.7).
Setting PYOPENGL_PLATFORM=glfw or win32 before running quickstart.py. This removed the AttributeError but left the viewer window blank or “Not Responding.”
Creating my own GLFW window and calling glfw.make_context_current(window) didn’t stop the blank window. Possibly, Genesis uses a different thread or never pumps window events??
Adding time.sleep or manually swapping buffers only led to a blank white/black “Not Responding” window.
Trying headless mode (show_viewer=False) works without errors, though it warns that headless rendering is unsupported on Windows. It shows “Running at XXX FPS” while just doing CPU steps.

It looks like genesis-world doesn’t fully implement a Windows viewer loop (e.g., no event polling), so OpenGL calls don’t update the window.
Only after trying out all the steps above did I see that this is in the project roadmap and help is needed. :-)  I’m happy to assist if someone can point me in the right direction. I’m not an OpenGL or rendering expert, but I would love to help, particularly with the Windows Interactive Viewer.

i created a discord so ppl can figure out together how to do it : https://discord.gg/cUGScAKVnt

I’m on Windows 11 using genesis-world (v0.2.0). When I try [hello genesis](https://genesis-world.readthedocs.io/en/latest/user_guide/getting_started/hello_genesis.html) set show_viewer=True in scene = gs.Scene(...), I get an “AttributeError: function ‘glGetUniformLocation’ not found.” My code runs the CPU-based physics fine, but OpenGL visualization fails.
I tried several fixes after researching and getting help from o1:

Installing PyOpenGL-accelerate and verifying pyopengl version (3.1.7).
Setting PYOPENGL_PLATFORM=glfw or win32 before running quickstart.py. This removed the AttributeError but left the viewer window blank or “Not Responding.”
Creating my own GLFW window and calling glfw.make_context_current(window) didn’t stop the blank window. Possibly, Genesis uses a different thread or never pumps window events??
Adding time.sleep or manually swapping buffers only led to a blank white/black “Not Responding” window.
Trying headless mode (show_viewer=False) works without errors, though it warns that headless rendering is unsupported on Windows. It shows “Running at XXX FPS” while just doing CPU steps.

It looks like genesis-world doesn’t fully implement a Windows viewer loop (e.g., no event polling), so OpenGL calls don’t update the window.
Only after trying out all the steps above did I see that this is in the project roadmap and help is needed. :-) I’m happy to assist if someone can point me in the right direction. I’m not an OpenGL or rendering expert, but I would love to help, particularly with the Windows Interactive Viewer.

thanks, I finally managed to run them in ubuntu desktop since that is quite straightforward way to do so

well, I don't think using cpu 'always'  as a render unit is a good behavior in such parallel-ish consuming project

show_viewer=False

@Jup33Q Thanks for all the effort you have made. I am a technical dev with 20+ years experience in Coldfusion, Java, NodeJs, Objective-C & JavaScript. Unfortunately, my Python is extremely basic. So, I cannot really help here.
I really hope that you can contribute to this project and find a solution to this rendering issue for Windows users.
In the meantime, where do I add:
show_viewer=False

5. Trying headless mode (show_viewer=False) works without errors, though it warns that headless rendering is unsupported on Windows. It shows “Running at XXX FPS” while just doing CPU steps.

OK. So this does remove the errors but no rendering is done:
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

Install the latest PowerShell for new features and improvements! https://aka.ms/PSWindows

PS C:\Users\cdesi> cd C:\Users\cdesi\Desktop\work\genesis_world\python\projects\genesis_world
PS C:\Users\cdesi\Desktop\work\genesis_world\python\projects\genesis_world> python .\genesis_world.py
[Genesis] [15:48:31] [INFO] ╭─────────────────────────────────────────────────────────────────────────────────────╮
[Genesis] [15:48:31] [INFO] │┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉ Genesis ┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉┈┉│
[Genesis] [15:48:31] [INFO] ╰─────────────────────────────────────────────────────────────────────────────────────╯
[Genesis] [15:48:31] [INFO] Running on [Intel64 Family 6 Model 154 Stepping 3, GenuineIntel] with backend gs.cpu. Device memory: 31.68 GB.
[Genesis] [15:48:31] [INFO] 🚀 Genesis initialized. 🔖 version: 0.2.0, 🌱 seed: None, 📏 precision: '32', 🐛 debug: False, 🎨 theme: 'dark'.
[Genesis] [15:48:32] [WARNING] Headless rendering not yet supported on Windows.
[Genesis] [15:48:32] [INFO] Scene <7319f94> created.
[Genesis] [15:48:32] [INFO] Adding <gs.RigidEntity>. idx: 0, uid: <478eff7>, morph: <gs.morphs.Plane>, material: <gs.materials.Rigid>.
[Genesis] [15:48:32] [INFO] Adding <gs.RigidEntity>. idx: 1, uid: <40213cc>, morph: <gs.morphs.MJCF(file='C:\Users\cdesi\AppData\Local\Programs\Python\Python311\Lib\site-packages\genesis\assets\xml/franka_emika_panda/panda.xml')>, material: <gs.materials.Rigid>.
[Genesis] [15:48:32] [INFO] Building scene <7319f94>...
[Genesis] [15:48:45] [INFO] Compiling simulation kernels...
[Genesis] [15:49:03] [INFO] Building visualizer...
[Genesis] [15:49:03] [INFO] Running at 20833.33 FPS.
...
[Genesis] [15:49:04] [INFO] Running at 1152.14 FPS.
[Genesis] [15:49:04] [INFO] 💤 Exiting Genesis and caching compiled kernels...
PS C:\Users\cdesi\Desktop\work\genesis_world\python\projects\genesis_world>

show_viewer=False

@Jup33Q Thanks for all the effort you have made. I am a technical dev with 20+ years experience in Coldfusion, Java, NodeJs, Objective-C & JavaScript. Unfortunately, my Python is extremely basic. So, I cannot really help here.
I really hope that you can contribute to this project and find a solution to this rendering issue for Windows users.

So do I, it really help if there is any integration version with in touchdesigner or blender, that really helps

show_viewer=False

@Jup33Q Thanks for all the effort you have made. I am a technical dev with 20+ years experience in Coldfusion, Java, NodeJs, Objective-C & JavaScript. Unfortunately, my Python is extremely basic. So, I cannot really help here.
I really hope that you can contribute to this project and find a solution to this rendering issue for Windows users.

I wish there is any team working on a touchdesigner or blender version of those

I wish there is any team working on a touchdesigner or blender version of those

In fact, integrating Genesis into Blender would be a match made in heaven.🙂
Both, are created in Python, and Genesis could be added to the Blender core.
I might see if I can post this thread on the Blender Community Forum?
I am sure the Blender Core Team would be able sort this out.

@Jup33Q I have just added a post, referencing this matter, on the Blender Stack Exchange.
Maybe someone from the Blender Core Team, will see it and offer to help?
https://blender.stackexchange.com/questions/329107/can-the-blender-core-team-help-to-get-genesis-world-physics-engine-working-on-wi
Can everyone jump onto this post, add comments, so that we can generate some exposure on Stack Exchange.


network.Nodes.Add(node1); and node1.Inputs.Add(node1Input); not working

Issue Resolved.

Issue resolved


[Nice-to-have N6] Incorporate generative AI to assist during the preparation

For example, users can seek help from ChatGPT, Copilot (or such other services) to seek explanation of code written by the other participant. Users can seek help from gen AI to solve the puzzle by providing prompts from within the interface.

I'll do the frontend UI/UX (together with my N1 chatting feature) and backend integration for this nice-to-have, and @brein62 you can focus on backend communication with 3rd party AI service APIs.

I'll do the frontend UI/UX (together with my N1 chatting feature) and backend integration for this nice-to-have, and @brein62 you can focus on backend communication with 3rd party AI service APIs.
Please refer to #98 (comment) for more information

as mentioned, do not touch this feature, just work on what you have. your N1 will be quite a lot of effort and you've already done N4 so you're more than covered workload-wise


Adb detect bug

If computer having 2 or more adb.exe file founded, cmd will return "The adb executable is not available!"
Tested by deleting the rest of the adb files.

The reason this is failing seems to be that under windows the command used to check the adb availability (where) returns all matching paths.
See:

where
command (linux/mac)

I'll change the way this is done. The command output should be split at \n and then reduced to a bool using the logic already in place (plus file extension check on windows, as it's looking for a pattern instead of a match I guess).


[Tooltip] Keep tooltip open when trigger is activated

Feature request
Overview
I'm trying to implement a tooltip using Radix that stays open when activating the trigger, but can't think of or find a way to do it.

Examples in other libraries

Who does this impact? Who is this for?

Additional context
https://github.com/radix-ui/primitives/issues/1077
I tried following the suggestions here but they did not work. I'm assuming some of the props like onPointerDownOutside are no longer supported for the Tooltip?

Hey @dannyhkim,
That prop is still supported, it hasn't changed.
You can see the story we have for this behaviour in our code:
https://github.com/radix-ui/primitives/blob/768bc53149aa1f432b5e630b99589237f6333364/packages/react/tooltip/src/Tooltip.stories.tsx#L617-L643
and here it is running in our latest storybook build from main: https://601857eb614bae0021c9b9dd-adxkvgwszr.chromatic.com/?path=/story/components-tooltip--keep-open-on-activation
I will close the issue as it all seems to be working fine.

It says the prop `onPointerDownOutside` does not exist on type 'IntrinsicAttributes & TooltipContentProps & RefAttributes'

Hi @benoitgrelard, here is a link to the sandbox.
Thanks

Ah I see, you're using the latest stable which doesn't yet have that prop.
This is a change we made recently to enable such use-case as the one you are trying to achieve.
You can upgrade to the latest rc for now until we release v1 probably next week.

Sorry to comment on a closed issue, but is there a way to get this to work with submit buttons?
In react-router (and Remix I suppose), forms are used for things which don't always result in navigation, so we'd need to submit a form whilst still showing the tooltip

Any tips on an example where the trigger is not just plain text but rather some other component?  The example appears to only work with plain text.  I am using a span inside the trigger and was unable to get the tooltip to stay open


Add name file in download settings

Maybe it could be cool to add a name zone in download setting when adding a download instead of in advanced settings ! And maybe fullfill the text box with the default name and let the user change it if he wants ?
I have no time no to develop this so I suggest the idea :)

Sorry... Didn't see the little --out option...


My Server does not shows Highcharts

I have setup all things step by step. Everthing working, miner does connect and display at my Pool. But the section for Stats it show only "Loading hashrate chart..." And i don`t know why?
Can you help me with this?

Hello,
you need to open an account at woopra.com then change this.
but before check if your API works http://YOUR_SERVER_ADDRESS/api/get/data/index.php?data=miner_hashrate&range=max&dtx=YOUR_ETH_ADDRESS
Not trying to hijack this project but a new pool that was sponsored by Ethereum project was just released , it comes with stratum support which is the most important feature IMO.

Why is stratum the most feature?
Everyone hypes stratum - but, with Ethereum, it only reduces the blockchange time.
vardiff is already implemented in this pool, and it actually has a greater impact on mining than stratum.
Stratum requires more resources on the server and in some cases, may actually REDUCE your chances of finding a block. Truth is, if you just throw everything on a single $20 mo. server, it won't be any better than a good getwork implementation.

Stratum is so important because when you have a large pool or a large mining farm, bandwidth and latency is the key of the performance of your pool and respectively miners.
Another thing I will add, I tried this pool software, it is so inefficient and resource hungry that we decided to just stop using it, I couldn't figure how to scale this code and I am sure that http://ethereumpool.co/stats/ have the same issues, php just suck for performance and large scale applications.
read more here https://github.com/karek314/Ethereumpool.co---Ethereum-Mining-Pool-Full-Source/issues/7#issuecomment-184557696

also PHP is great to do fast and easy tasks and/or small projects, and the skill of this developer can be seen here, being new to Ethereum then, I've learned a lot by looking at his code... but it is not efficient.

Ok thanks a lot for quick response.
I will watch and probably try the new code of the stratum pool. It is very
interesting.
Here you can find out s little bit more about my pools
https://www.mastermining.net
But a this time not a lot miners are on my pool only on tagcoin pool is a
big player...because i have migrated my server this week to newer.
Best Regards
Mike (Merratzz )
Am 28.04.2016 5:54 PM schrieb "Mourad Ilyes Mlik"<EMAIL_ADDRESS>
:

Hello,
you need to open an account at woopra.com then change this.
https://github.com/karek314/Ethereumpool.co---Ethereum-Mining-Pool-Full-Source/blob/master/mainpage/assets/js/main.js#L42-47
but before check if your API works
http://YOUR_SERVER_ADDRESS/api/get/data/index.php?data=miner_hashrate&range=max&dtx=YOUR_ETH_ADDRESS
Not trying to hijack this project but a new pool that was sponsored by
Ethereum project was just released
https://github.com/sammy007/open-ethereum-pool, it comes with stratum
support which is the most important feature IMO.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/karek314/Ethereumpool.co---Ethereum-Mining-Pool-Full-Source/issues/12#issuecomment-215475411

Stratum is important to YOU. If you only want to spend $40 a month on a server that generates $400 in fees then yeah...whatever.
PHP scales just as well as node - if you know what you're doing.
You're comment about PHP is hilarious, and just plain mistaken.

It's much harder to debug and track down errors in node/redis than PHP/MySQL - been there.
This code is alpha, works fine if you re-write it and use HHVM instead of PHD (push here dummy) PHP
Sammy007's code looks pretty good, and node-stratum is mature.
My main concern is it's punishing the wallet with 4 RPC calls per second.
I'm planning on modifying geth to push the newwork info to memcache on blockchange - much more efficient.
I suggest everyone do the same.

did you click on the link where I pointed you to a discussion where I had a 24 core barebone server with 96 GB of Ram and SSDs, where I reduced work processing  and increased minimum diff  and diffrent setups of php5-fpm, HHVM and php7.0-fpm as well....  nothing really helped.
Just try to mine in this pool  take a look at your gethminer and come back with an opinion.
PS: I do a lot of php development, a bit more nodejs, some C++ and python.... and I can tell you that PHP sucks for performance app and large scale ops.

Ok i have setup woopra.com and change in my code.  When i try api i get an database error. And what should i do on Whoopra more. Click something or only write my Project id in Code?

here is the site http://etherum.mastermining.net/ probaly it can help for

I did read your link, mmitech - and I laughed a bit, I have to say.
I think you changed all the wrong things, for all the wrong reasons.
I've got it running (mosly re-written) on (2) tiny VM's at 10% load with only a few users.
Painfully, it's geth that has the hardest time keeping-up.
The Nginx/HHVM will keep-up with 100x the activity - GETH IS THE PROBLEM.
The more it mines, the more it suffers - funny thing is, it's written in GO, one of faster on your "php sucks link".
Merratzz - DON'T USE THIS CODE - YOU HAVE TO RE-WRITE A LOT OF IT TO GET IT TO WORK.
Use sammy007's node pool,

check that all includes location are right, in every single page you need the config and BigIntegerto be included correctly.
You will have to do many more rewrites anyway, so if you don't have the skills just stop now, Geth rpc also changed a bit so you have to look at that also.

@davembg ok, now you've wiped my 8 years of experience of ops and DevOps in two sentences, I would love to try your improvements on the 2 "tiny VMs" we have at least 50 GHs in our DC, I will gladly point 5-10 GHs to test your code.
PS: again, ethereumpool.co/ is a live example of how this PHP suck for large scale backend ops.... take php-MPOS, it works fine because it only serve the frontend and do simple backend share/stats calculations, all the serious mining handling is done by NOMP or Stratum-mining (python).

ok thanks i wil try to get running worker running one uncle block already have found yes the bigInteger i have change all with jedit serach replace the www4....with my domains. I thins now there only something to do but what,
@davembg    there is no quick start out for this code ?

@davembg there is no quick start out for this code ?  For me the best way is a Nomp startum with mpos but there is noting good code there with stratum implemation only something found from supernova but i did not get to work with this.

Why the api not running i think thats why the stats site only show me
4 times Loading hashrate chart...
Loading balance chart...
Loading miners chart...
Loading workers chart...

@Merratzz  because the JS script can't fetch any data, it says database error when I visit: http://etherum.mastermining.net/api/get/data/index.php?data=hashrate&range=max
check if you are calling the config correctly...

Merratzz - no, there is no quick start. This code is ALPHA and basically a framework and methodollogy for building a pool.
Some good ideas here - like using memcache for getwork calls and reducing diffs in getwork.
mmitech - I don't mean to doubt your experience, deploying a pool on a single server is what I was laughing at. For your load you need 3-4 servers and LB on the frontend.
You seemed to think that heavy load and latency was due to HHVM/PHP and I didn't see enough data on your traffic - just load. You can't reduce heavy load and latency load with faster code, it just uses more resources. Load and latency are usually reduced horizontally, not vertically.
I would be glad for 1GH to 5GH on my beta pool, using HHVM/MySQL.
Geth will still complain FAR more than Nginx, I bet.
Any more than 1-5 and I have to spin-up more machines for LB.
We agree this code has a lot of stuff going-on that really doesn't need to happen:
Validating every share in the shares table every minute during the round.
4 RPC calls per second to the wallet for getWork
Calling home using woopra.com code (JUST REMOVE THE JS, ugh)
Why in the world would you need a single monster machine for a pool?
Many smaller machines provide redundancy and better load distribution.

Having 4 VMs in one Hypervisor is the same like having 1 barebone server that host the 4 VMs... never ever try to scale your hardware before optimizing your code as much as possible.
I've seen well optemized code run the same load on a single VM that runs on a 6 vcores, 8GBs and SSD, if we talk about scaling, having a DB barebone optimized server for Mysql and one load balancer with 3 barebone servers for the backend should be more than enough if you are running a large pool such as dwarf.

You have too make sure your VMs are on unique hardware, which I always do.
Saying "never" in this business is knee-slapping funny - never works that way:)
Many times the REASON you scale is because of bad code that's too expensive or time consuming to optimize.
Load isn't everything, it's response time and availability that are key.
Lower load doesn't always produce faster response, especially during testing.
You won't have optimal response and HA with a single piece of hardware, right?
I too, have a lot of experience with code, MySQL in large installations, Cisco data and voice, and Linux/Solaris deployment/management experience. I have several VM's that are 8yrs old.....just sayin'
If you hit my pool with 1-5GH and it falls over, that would actually be of GREAT help to me.
I'll be happy to post results with my 1GB single-core nginx/hhvm VM.
I'm betting node won't do much better, and I'd love to find out.
donkeypool.com is the URL.

I thought you would share your code with us to benchmark it... I am not going to change 50 workers settings to test on your pool (especially that we are using stratum proxy).
open source your code and I promise it will get tested sometime soon.

I will share my code, because it's based-on karek's.
I would just like to fine-tune it a bit.
I certainly understand why you wouldn't want to move 50 miners over.
Lemme know if you want that geth hack for getwork - so you don't have to punish your wallet instances with 4 requests per second.

@mmitech ok yes i have check the confg.php
I seem be good, because my own miner does correct write in sql database. When i show in poolhashrate are always new listings. So in config i setup only database Connection settings, correct? Maybe I need to download the code once again and have made errors at change?  Or are there other depencies to intstall? Like something for JS script. nodejs  + npm is already installed. I will try again tomorrow.

@Merratzz there are many edits to be made and you have to use geth 1.3.x or the the RPC calls will fail with an "unmarshal" error. At least that's what I experienced.  I would strongly advise you to use sammy007's pool code, this code won't likely be updated.

@Merratzz Just change all
or die("Database Error");
in /api/get/data/index.php
to
or die(mysqli_error($mysqli));
And let us know with results or fix it yourself if you understand source of the problem. im guessing that maybe some path issue with db config.
According to code, as far i know this code still works, even that it was written in early geth versions. I can fully agree that code looks unreadable and messy, and there are few things that could be removed and obviously improved, specially in terms of visibility. But as i have mentioned that was written fast, in few hours work, i haven't even check some things. Reason was just to help community do not centralize with mining.
Im also not understanding concerns with performance.

eth.pp.ua works fine with 30ghash connected. AFAIK, they have one machine with 12 cores.
I was running this pool without any problem under 250 workers, also on one machine.
I can also agree and confirm that geth is not efficient at all, specially shares verification is very heavy and take lots of resources, it can be enabled or ignored, but then anyone can easily modify diff and cheat pool to receive higher rewards per share.
According to pool efficiency the most important thing is to run on dedicated server. Most VPS provide very unfair resources, i have been using Digital Ocean for some time for some projects, and they have very high steal time on some machines which is actually worthless for that high prices. If someone want to create pool or anything, just skip VPS resellers and go on dedicated.
PHP is no that bad in terms of performance, it depends specifically on task, but actually everything can be written in any language but with some languages it requires more work or time and with some less. I really do not understand why someone says that PHP is not efficient, it depends on code. But in case mining pool, let's make it clear. In case geth gets overloaded, then responses to php scripts may take longer which will cause php compiler to slow down etc... It depends on configuration. Running good efficient pool requires few nodes and few servers to fairly balance load. But running pool with one machine and less than 500 workers should be easily possibly with that code and good configuration.
Good configuration is the key, but this is only Github page with issues related to code itself, no point discuss here performance tips, but this is the simplest, maybe not best solution.
sysctl -w net.ipv4.tcp_tw_recycle = 1
or/and
sysctl -w net.ipv4.tcp_tw_reuse = 1

@karek314 not trying to degrade your work, I said a couple of times that we really appreciate the work people like you do... but I give up arguing about PHP sucking at performance, I posted many tests and researches that debunk that.
This doesn't mean you should stop what you are doing, I've learned many things looking at your code. and I am looking at your LISK pool and its indeed cleaner than this one. I will give it a try later :)

@karek314 did a good job making a working model, totally agree.
PHP5, yes - not as efficient as node, go, c++ etc.
If you use HHVM, your performance does indeed rival that of lower-level languages.
HHVM is PHP, true - but pre-compiled byte code. Works fine for FaceBook, just sayin'.
Be careful re-using TCP connections in conjunction with conntrack. I had some issues.


Place the recommended interpreter above the + Enter interpreter path in Select Interpreter quick pick

The feedback from Kai was that users are more likely to select the suggestion instead of entering a new path.
Hence the most likely option shoudl probably be on top.

We could also consider making "Select interpreter" be a + button.

Just to be clear we're on  the same page, the suggestion is to flip order of the first two in the below screen shot

We're thinking of not even flipping but pushing the "Enter interpreter path" way down the list since most folks probably don't care about it (have to check telemetry to be sure).


Setting currency cell style to 0 decimal places shows as 2 decimal places

Description
I am trying to display US Dollars, English (United States) in a cell with 0 decimal places, using the documented NumFmt 165 with this style declaration: &excelize.Style{NumFmt: 165, DecimalPlaces: 0}. However, debugging in the Excelize code in styles.go, if the number of decimal places is 0, it is reset to 2, and as a result, the dollar amount is shown in the spreadsheet with two decimal places.
I have worked around this for now in my code by using the custom format: "[$$-409]#,##0", but given Excelize already supports this encoding and currency, it is much better to use built-in support rather than creating a non-intuitive custom format.
Steps to reproduce the issue:

Unzip the attached file currency.zip containing the test program.
cd to directory "currency".
invoke go run .
The code will create an output file "test.xlsx".
Open "test.xlsx" with Excel and observe that cell A1 shows the value as "$35.27" instead of "$35".

currency.zip
Describe the results you received:
On running the test code and opening the created Excel file, we note that the cell value for A1 is shown as "$35.27". Further, right mousing on the cell and selecting "Format Cells...", we see the proper currency encoding, but the number of decimal places is 2.
Describe the results you expected:
The value displayed is "$35" and "Format Cells..." shows the number of decimal places as 0.
Output of go version:
go version go1.20.5 darwin/amd64

Excelize version or commit ID:
github.com/xuri/excelize/v2 v2.7.1

Environment details (OS, Microsoft Excel™ version, physical, etc.):
MacOS Ventura 13.4.1, Microsoft Excel™ Version 16.74

Additional debugging details:
I see two places in the Excelize code that would contribute to the observed result:

styles.go, function NewStyle(style *Style), approx line 2004:

if fs.DecimalPlaces == 0 {
		fs.DecimalPlaces = 2
}

I have declared that I want 0 decimal places, but the code resets it to 2. Should this possibly be if fs.DecimalPlaces < 0 as it is in the code in newNumFmt() below?
But even if that is fixed, there is another issue in the flow:

styles.go newNumFmt(styleSheet *xlsxStyleSheet, style *Style), approx line 2310:

dp := "0."
numFmtID := 164 // Default custom number format code from 164.
if style.DecimalPlaces < 0 || style.DecimalPlaces > 30 {
	style.DecimalPlaces = 2
}
for i := 0; i < style.DecimalPlaces; i++ {
	dp += "0"
}

Here the issue is that if DecimalPlaces correctly had the value 0, the final value of dp would be "0." (the loop has 0 iterations), leaving an extra dot at the end of the desired format (it should be "0"). And so later in the code, the final format is: "[$$-409]#,##0.", whereas it should be "[$$-409]#,##0".

Thanks for your issue. I have changed the data type for the DecimalPlaces to pointer of integer to resolve this issue. Please try to upgrade to the master branch code, and this breaking changes will be released in the next version.

Oof, but that's a not backward compatible change :\


Add a starter grafana dashboard for KalDB.

For the time being, not merging this dashboard into the repo but keep this PR as a reference.


Add default config path for Kitty

This adds ~/.config to the locations to search for /kitty/kitty.conf. This is the default path as the documentation states.

That's what XDG_CONFIG_HOME is for.


Validation: vkCmdClearAttachments validation not checking all parameters

In the spec for vkCmdClearAttachments (https://www.khronos.org/members/login/sandbox/vulkan/wsi/xhtml/vkspec.html#vkCmdClearAttachments) it lists several rules including:

The rectangular region specified by a given element of pRects must be contained within the render area of the current render pass instance

Looking at the validation code for vkCmdClearAttachments in https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/blob/master/layers/parameter_validation.cpp#L3429 it doesn't appear this rule and many of the others from the spec are being checked.

There are many valid usage checks that are not in the layers atm. We do have a task for improving this and a fairly comprehensive list for what is and needs to be done. If you feel that a specific check is important compared to others feel free to post bugs like this but if not these will be addressed as part of that effort.

I'm not sure about the relative priority of this one. I reported it only because it caught out a Vulkan developer even when had layers enabled.

If it was seen in practice thats enough to bump the priority as a good chunk of the checks that need to be added will probably not be hit by the vast majority of people.

Cool. Also issue #397 was seen in practice.

Hi, there's also a bug in vkCmdClearAttachments() related to checking attachment index in VkClearAttachment. The spec says:

colorAttachment is only meaningful if VK_IMAGE_ASPECT_COLOR_BIT is set in aspectMask, in which case it is an index to the pColorAttachments array in the VkSubpassDescription structure of the current subpass which selects the color attachment to clear.

Note it says "in subpass description", so this line is wrong:
if (attachment->colorAttachment == pSD->pColorAttachments[i].attachment) {

The right hand side of condition is index in the render pass (create info), rather than the subpass. It should be compared to i instead.

This is presently in-work.

Fixed by PR #1385.


Create user stories

Create 2 user stories to highlight technical requirements from the perspective of the user.

Finished creating user stories and added them to the documentation.


Video sharing

Hi, I  have been trying to figure out how to add video sharing in twitter and facebook. I started out trying to add an video element in the javascript to get the video using the video file path but when I test the share button the popup facebook dialog doesn't add the video. Any help on this?

@leemarcus27 Sharing videos is something that is quite a bit beyond both the capabilities and intentions of this library.
Here's more information on uploading videos to Facebook that might help you out: https://developers.facebook.com/docs/graph-api/reference/video


yarn install not work

I am trying to follow your instructions. I already have a problem with the first step. When i enter yarn install it doesn't find any file with the name install. i went into the order i clonetted with cd before. in your repository i couldn't find any file with the name install either.
sorry i know the error is on me. i am stupid

npm istall work. idk why yarn not work

Did you do the following?
git clone https://github.com/app-clones/netflix-clone
cd netflix-clone
yarn install

If so, make sure you have yarn installed (npm i -g yarn), and if the issue still persists can you please post a screenshot of the error?

has helped. thank you.

No problem!


fix app title logic

What issues does this PR close?
closes #237 Website title does not update in some scenarios
Unauthenticated

Onboarding (both organization and user)

Pending

Rejected

404 Page not found (page + title)

Logged In

### Checklist
- [x] The PR title is short and expressive.
- [ ] I have updated the CHANGELOG.md. See [changelog_update.md](https://github.com/sovity/authority-portal/tree/main/docs/dev/changelog_updates.md) for more information.
- [ ] I have updated the Deployment Migration Notes Section in the CHANGELOG.md for any configuration / external API changes.
- [x] I have performed a **self-review**

@kamilczaja MDS is back in Titles


fix(preset-typescript): don't default to empty include option

Since #73 the include option for the typescript loader defaults to an empty array, which essentially makes it required ([] never matches). This PR only adds include to the loader if something was provided in the addons config.
Alternative approach: clarify in readme that include is not an advanced option but required.

@shilman This makes sense to me. Will have to merge with #68 which removes the react-docgen-typescript-loader part.


Fix ESACCI-SST entry in recipe_check_obs.yml

Description
This PR aims at updating the ESACCI-SST entry of the recipe_check_obs.yml

Closes #2040

Before you get started

[x] ☝ Create an issue to discuss what you are going to do

Checklist
It is the responsibility of the author to make sure the PR is ready to review. The icons indicate whether the item will be subject to the 🛠 Technical or 🧪 Scientific review.

[ ] 🛠 PR has a descriptive title for the changelog
[ ] 🛠 Code follows the style guide
[ ] 🛠 Documentation is available
[ ] 🛠 YAML files pass pre-commit or yamllint checks
[ ] 🛠 Circle/CI tests pass
[ ] 🛠 Codacy code quality checks pass
[ ] 🛠 Documentation builds successfully on readthedocs

New or updated recipe/diagnostic:

[ ] 🛠 Provenance information has been added
[ ] 🛠 New dependencies are added to the project requirements
[ ] 🧪 Documentation for the recipe/diagnostic clearly describes what it calculates from a scientific point of view
[ ] 🧪 Recipe runs successfully on @esmvalbot or some other machine without modification
[ ] 🧪 Figure(s)/data look as expected
[ ] 🧪 Code is well documented and scientifically sound

New or updated data reformatting script:

[ ] 🛠 Dataset is added to the table in the documentation
[ ] 🛠 Documentation contains instructions to obtain the data
[ ] 🛠 Tests for the CMORized data are available
[ ] 🧪 Numbers/units of the data look physically meaningful
[ ] 🛠 Data set is added to the OBS data pool

To help with the number pull requests:

🙏 We kindly ask you to review two other open pull requests in this repository

I moved the NSIDC-0116 (Tier 3) dataset from the Tier 2 section to the Tier 3 one. When I work on JASMIN, I need to comment the Tier 3 part but I always get an error because this dataset is not in the right section of the recipe.

are we sure it's 2.2 - @cjroberts has produced an up to date cmorizer and data only last November and I believe 2.1 was the latest then. Alas, am not the OBS experto - you are Remi, so am trusting you are correct 👍

Ok then let me double check before we can merge...

If it turns out that the correct version of ESACCI-SST is v2.2, we should also correct the two affected recipes recipe_perfmetrics_CMIP5.yml and recipe_perfmetrics_CMIP5_4cds.yml.

Just checked the data source for the ESACCI-SST dataset: http://surftemp.net/regridding/index.html
It seems that the correct version is v2.1. This means correcting the version in cmor_config/ESACCI-SST.yml and rerunning the CMORizer instead of changing the recipes.

Just checked the data source for the ESACCI-SST dataset: http://surftemp.net/regridding/index.html
It seems that the correct version is v2.1. This means correcting the version in cmor_config/ESACCI-SST.yml and rerunning the CMORizer instead of changing the recipes.

Yes you're right. I'll close this PR and will open a new one to fix the number in the cmorizer. I'll try to re-download the obs data in the meantime to check that we have the right version.


Add TOPK.COUNT command

I'm starting to use TOPK for some work in our application and noticed that TOPK.COUNT was missing. It'll be handy for us to check some thresholds so I figured I could add it.
If this could be baked into a 2.x release soonish I would love it, otherwise we'll have to use my fork for a while.

coverage: 80.432% (+0.003%) from 80.429%
when pulling 1d8b878def395b2f500e1822606a372fcaeddcff on acb:topk-count
into 0a92618fa14f7fb7a8fc9de7564bed69cebb97e9 on predis:v2.x.


Search editor's not in recent history

Testing #127355
Open and close a .code-search file and it is not listed in the recent files history.

Same for GitHub issue notebooks. .png opened with Luna Paint do show up.

We only add to the list of File > Open Recent when you use a file dialog. Did you in all cases?

Retried when opening from the Explorer and now it works. Not sure what happened. Ok to close for me unless you think there is something to go after still.


Links to outdated pages

This page is applicable to Windows Server 2016.  But, in several places it has important links to pages that exclude Windows Server 2016, some of which have deprecation warnings on them.  This leaves someone using 2016 wondering if they're wasting their time using resources that won't work on Windows 2016.

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

ID: 5f70b91f-1cbc-3ea4-3760-d8945f9ff1fb
Version Independent ID: 5372fa26-d2b9-8fa9-c4ec-7ce34f062b57
Content: Cluster to cluster Storage Replication
Content Source: WindowsServerDocs/storage/storage-replica/cluster-to-cluster-storage-replication.md
Product: windows-server
Technology: storage-replica
GitHub Login: @nedpyle
Microsoft Alias: nedpyle

@spatters-git can you point out which ones?

They cannot, as that is the email bot 😅. You will need to reply to the customer commenter at the original link if they didn’t give enough details
Sent from a phone so probably illegible

From: arpita duppala<EMAIL_ADDRESS>Sent: Monday, December 2, 2019 12:47:03 PM
To: MicrosoftDocs/windowsserverdocs<EMAIL_ADDRESS>Cc: Ned Pyle<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/windowsserverdocs] Links to outdated pages (#3572)
@spatters-githttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fspatters-git&data=02|01|nedpyle%40microsoft.com|6cfefa0044db4cf367d108d77768c9c7|72f988bf86f141af91ab2d7cd011db47|1|0|637109164256529489&sdata=SfHfAFEzhI9hJNJit82syBYnNqOKR1%2Fgt3hPHuItsoY%3D&reserved=0 can you point out which ones?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fwindowsserverdocs%2Fissues%2F3572%3Femail_source%3Dnotifications%26email_token%3DAEM52N2TLLDKVU6AKRPTW6TQWVX4PA5CNFSM4JTBZIT2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFU22CI%23issuecomment-560573705&data=02|01|nedpyle%40microsoft.com|6cfefa0044db4cf367d108d77768c9c7|72f988bf86f141af91ab2d7cd011db47|1|0|637109164256529489&sdata=7X%2F68mAZtR622QxBJPzzZD6zpSn6WLNbuCSCC5BAMNk%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEM52N3SOEVPGKZYHJLHQJDQWVX4PANCNFSM4JTBZITQ&data=02|01|nedpyle%40microsoft.com|6cfefa0044db4cf367d108d77768c9c7|72f988bf86f141af91ab2d7cd011db47|1|0|637109164256539477&sdata=zrNLDbw3XuT4x2QaFtfve1l4pGGlLxsqaCuS0xC%2BYzA%3D&reserved=0.

I did my part - I let you know some of your links were broken.  If you're interested in having accurate documentation, you can spend a few minutes clicking them.  There aren't that many, and the supported OSs are right at the top of the link destinations.


Sound is mono (not stereo)

I using this player for playing karaoke YouTube video, but there's no vocal, only music i can hear.
Can this player play stereo music?

Hey, if the problem is the player not being mono you should hear both channels overlapped, right?

The problem is the player not stereo.

Yeah sorry, I meant stereo.

How to make both channels overlapped?

Well, that's what should happen if the problem is that the sound is not stereo.
What I'm trying to understand is if that's really the problem you're having.

I use this video https://youtu.be/PdXljK7LRKU with your YouTube player library, but no vocal, only music i can hear.
You can try.

Sounds very weird. I can't think of any reason for this to happen. Vocals and music are part of the same audio stream. Unless your phone has 2 speakers and one of the two is broken.

Ok, can this player change aspect ratio of YouTube video? Example: from 4:3 to 16:9

This is a different question. To keep everything in order I suggest opening a new issue for it.

When i using official YouTube app the sound is stereo, but when i play YouTube using web/browser on my phone, the sound is mono.

Can't say much if I'm not able to replicate the issue.