Add Nicolas Belouin (@diconico07) to CODEOWNERS

What this PR does / why we need it:
Add myself (Nicolas Belouin) as maintainer for akri.
Special notes for your reviewer:
This requires giving write access to the repository before merge
If applicable:

[ ] this PR has an associated PR with documentation in akri-docs
[ ] this PR contains unit tests
[ ] added code adheres to standard Rust formatting (cargo fmt)
[ ] code builds properly (cargo build)
[ ] code is free of common mistakes (cargo clippy)
[ ] all Akri tests succeed (cargo test)
[ ] inline documentation builds (cargo doc)
[x] all commits pass the DCO bot check by being signed off -- see the failing DCO check for instructions on how to retroactively sign commits

@diconico07 can you merge/rebase and then we can officially merge 🎉


⚠ Jenkins Plugins Artifactory has degraded performance

In 7cc6e75, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1268 ms

Resolved: Jenkins Plugins Artifactory performance has improved in a27c7bf after 30 minutes.


Log the driver version + plat info on connect to aid in log analysis

To aid in log analysis. I was tempted to log all system properties, but there are some sensitive ones in there, so I targeted the logging to relevant properties.
This is not a requirement to merge. I'm open to discussion. It just seems like this might help when we get issues where people leave out important details.

/azp run Microsoft.mssq-jdbc.windows

/azp run all


go: @irrelevant test_actor_ip

Mark the test as irrelevant since the Go library now relies on the backend copying what's in http.client_ip into actor.ip

Will set as ready for review once tests pass


Add Identity Avatar to the Account Selector component

We only show the account name and its level on the account selector, we could show the account identity avatar, like Singular does:

Solved by #57


Fix plugin regressions

Signed-off-by: Niels Bantilan<EMAIL_ADDRESS>TL;DR
There was a regression in the pandera plugin caused by this PR: https://github.com/flyteorg/flytekit/pull/655. It was not caught by CI for some reason
Type

[X] Bug Fix
[ ] Feature
[ ] Plugin

Are all requirements met?

[ ] Code completed
[ ] Smoke tested
[ ] Unit tests added
[ ] Code documentation added
[ ] Any pending items have an associated Issue

Complete description
How did you fix the bug, make the feature etc. Link to any design docs etc
Tracking Issue
https://github.com/lyft/flyte/issues/
Follow-up issue
NA
OR
https://github.com/lyft/flyte/issues/

@cosmicBboy thank you for the catch this is my bad!


Plots: longterm plan for webgl limitations imposed by browsers (Chromium)

Chromium browsers only allow 16 webgl contexts for a browser instance. This operates across all associated windows and tabs. We have been using the scattergl plotly type to render scatter plot data points, since it can handle a larger number than the svg implementation. When faceting is enabled, we can easily hit the upper limit of 16 webgl contexts, since we currently create individual plotly instance for each facet value. As a temporary solution, we switched to using the svg implementation when faceting is enabled. This is not optimal, since we may end up rendering too many points for the browser to handle with the svg implementation.
We need to explore alternative, more robust solutions. Some possibilities that come to mind:

Allow plotly to render all of the facets in a single plotly instance. This is probably the most robust solution, but requires re-implementing the current layout directly in plotly.

Note #259, in which we will have a FacetedXYPlot component. This would be the natural place to change the current approach we are taking with faceting, using FacetedPlot.

Determine an upper limit of data points for the svg implementation of scatter, and use that to determine if a subplot should use it or scattergl. In addition, we probably want to detect when a webgl context is thrown away and offer the user a mechanism to reload the plot or page. This could likely lead to a lot of code complexity.

See related issues

https://github.com/VEuPathDB/web-eda/issues/747
https://github.com/plotly/plotly.js/issues/2333

@dmfalke we're investigating possible solutions to https://github.com/plotly/plotly.js/issues/2333 on behalf of a customer, but it's likely to be a big project so if VEuPathDB has any interest in co-sponsoring the work that would make it more likely to proceed. Please DM me<EMAIL_ADDRESS>if there's interest.

@alexcjohnson thank you for reaching out. I'm not sure we're equipped to co-sponsor. I will raise this with my supervisor and DM you if this is something we can do. Thanks again!


feat: The Erdős–Ginzburg–Ziv theorem

Prove the Erdős–Ginzburg–Ziv theorem as a corollary of Chevalley-Warning. This theorem states that among any (not necessarily distinct) 2 * n - 1 elements of ZMod n, we can find n elements of sum zero.

bors merge


bug: Command Mason not found after loading mason.nvim

Did you check docs and existing issues?

[X] I have read all the LazyVim docs
[X] I have searched the existing issues of LazyVim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
0.9.1 release
Operating system/version
Arch Linux
Describe the bug
On a completely clean installation of LazyVim everything seems to be working except the :Mason command. It seems to do something with how lazy is setting up the commands. For example, I can run :lua require("mason.ui").open(), but the first time I run :Mason I get

Command Mason not found after loading mason.nvim

After thist first run of :Mason then every subsequent run afterwards gives the following error:

E464: Ambiguous use of user-defined command

Steps To Reproduce

Using the repro.lua file below, run nvim -u repro.lua
After the installation completes, run :Mason
See the error

Expected Behavior
I would expect user commands to be set up correctly such as :Mason rather than being required to use the lua API.
Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  "folke/LazyVim",
  { import = "lazyvim.plugins" },
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here

Cannot reproduce with Lazyvim starter template. I can execute the command just fine.

@dpetka2001 my recording is actually using the Lazyvim starter template. This is also with a completely fresh environment clearing out the cache/data/state folders and being completely clean

Yes, me too. Just tried a completely new installation and was not able to reproduce.

Maybe something gone wrong with initial Mason installation and you encountered the error? What if you delete ~/.local/share/nvim/lazy/mason.nvim and let Lazy reinstall it?

Actually @dpetka2001 I can reproduce from an already built LazyVim setup and just deleting ~/.local/share/nvim/lazy/mason.nvim. On startup it installs the plugin and afterwards I cannot run :Mason until I restart the editor. I can run :lua require("mason.ui").open() so it's loading the plugin, something is just going on with the setup of the lazy loading on command.

Yes, because after it got installed, I believe it's not immediately loaded until you restart Neovim. Whereas, when you require it you also load it and can use it.

It should be lazy loaded on the command based on the lazyvim plugin spec
After calling require("mason.ui").open() I still cannot run :Mason

Nope! This is the exact process I was following before to make sure things were clean (granted, different folder names) I verified with your exact lines and things and still got the same result.

You have to restart the editor for the plugin to load. Otherwise you could try Lazy reload mason.nvim, so that Mason gets reloaded and you can execute the command afterwards.

Yeah, it's just an interesting bug because Telescope and other plugins seem to work just fine on fresh installation and lazy loading by command. It seems like with lazy.nvim this should work on installation since it sorta has this non-deterministic result of which plugins are working/not working on installation.

I think that mason gets loaded right after build and the commands are not available yet for the user, until the plugin reloads.

I appreciate you helping out and taking some time to look at this with me :) Hopefully this could potentially get resolve in lazy.nvim upstream to enable this to work :D

I don't know what to tell you on this. The maintainer must have a better response as to what is actually happening and how it should be handled.

Yeah no worries, folke I believe is on vacation for a bit so hopefully will get weighed in on at some point. Thanks for your time!

I'm just used to restarting the editor to load the plugins, because Lazy reload is a recent addition to lazy.nvim and when I started using Lazyvim, this wasn't even an option so you had to restart the editor.

Yeah I agree completely :) the main fix here should just not require Mason to need to be reloaded. It should be resolved on the installation and with the lazy loading that is specified. Once the plugin is installed it shouldn't be loaded until the lazy loading events (unless lazy loading is disabled) and then it should load correctly. The notification given regarding the loading on Command is actually coming from lazy.nvim. It is saying that the :Mason command did appropriately get lazy loaded but after loading the plugin the command was not available. This is a bug of it not correctly identifying that the command was set up when the plugin was loaded and putting the original command back in place.

I was having a similar issue and determined that probably the best way to resolve this issue would be to add
require("mason").setup()

in an after/plug/lsp.lua file that can be loaded once lazy/packer/etc. finishes the plugin loading

Fixed in https://github.com/folke/lazy.nvim/commit/24f6b6f1c7fb68f02335dd9579faee8b243e6a54
This was caused because during builds the plugin must be loaded before startup, but handlers were not correctly setup.

I was having a similar issue and determined that probably the best way to resolve this issue would be to add
require("mason").setup()

in an after/plugin/lsp.lua file that can be loaded once lazy/packer/etc. finishes the plugin loading

Thank you.
Tried everything recommended in this thread, and updated Lazy too. But this is what actually fixed it for me.

sudo rm -r ~/.local/share/nvim/lazy
did the trick for me


OpenSSL 3.0.1 fails to generate .pem files with the same command that works successfully with OpenSSL 1.1.1

Platform: Windows
OpenSSL version: 3.0.1 from https://slproweb.com/products/Win32OpenSSL.html
We generate a certificate with the following command:
makecert -sv RP_Private_Key.pvk -n "CN=Company Name Relying Party" -b 01/01/2015 -e 12/31/2199 -sky exchange -ss My -a sha256 -len 2048 -r -pe RP_Cert.cer

Then we attempt to create a .pem file from the .pvk file with the following command:
openssl rsa -inform pvk -in RP_Private_Key.pvk -outform pem -out RP_Private_Key.pem

This successfully generates the .pem file when using OpenSSL 1.1.1
However when using Open 3.0.1, then OpenSSL fails with the following error:
"Could not read private key from RP_Private_Key.pvk
F0310000:error:1608010C:STORE
routines:ossl_store_handle_load_result:unsupported:crypto\store\store_result.c:151:"

The PVK format support requires algorithms present only in the legacy provider. You need to use the -provider options to load the legacy and default provider to make the command work with OpenSSL 3.0.


ticks unit is not consistent with formatDateTime parameter

Use this query to search for the most popular feature requests.
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
The unit of ticks is count of 100 nanoseconds from 0001/1/1. And the parameter of formatDateTime is count of second from 1970/1/1.. So when I want to convert a tick to a DateTimeStamp, I need to convert its unit first.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Unify the unit of them.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
[enhancement]

The simplest way to convert ticks to unix timestamp in Expression is  unixTimestamp = (ticks –<PHONE_NUMBER>00000000) / 10000000.
I am not sure if we should add a builtin function that convert from ticks to unix timestamp and from unix timestamp to ticks too.

duplicated with #3873


Error when running simple speech recognition code

Steps to reproduce
Running this code:
import speech_recognition as sr
import pyttsx3
import webbrowser
import wikipedia
import wolframalpha
import os
from termcolor import colored, cprint

ENGINE = pyttsx3.init('dummy')
VOICES = ENGINE.getProperty('voices')
ENGINE.setProperty('voice', VOICES[0].id)
ACTIVATION_WORD = "echo"

def Command_recognition():
    listener = sr.Recognizer()
    os.system('clear')
    activated_text = colored('ACTIVATED','light_green', attrs=['blink', 'bold'])
    print(activated_text)

    with sr.Microphone(device_index=1) as source:
        listener.pause_threshold = 2
        command = listener.listen(source)

    try:
        listening_text = colored('LISTENING...','light_green', attrs=['blink'])
        print(listening_text)
        query = listener.recognize_google_cloud(command, language='en_gb')
    except Exception as exception:
        error_text = colored('ERROR','red', attrs=['blink', 'bold'])
        print('\n'+error_text)
        print(exception)
        quit()
    return query

query1 = Command_recognition()
print(query1)

Expected behaviour
Run normally without issues and print speech input
Actual behaviour
crashed with this error code:
||PaMacCore (AUHAL)|| AUHAL component not found.Traceback (most recent call last):
File "/Users/ryan/Desktop/stuff/code/Project Echo/main.py", line 29, in Command_recognition
command = listener.listen(source)
^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/ryan/anaconda3/lib/python3.11/site-packages/speech_recognition/init.py", line 466, in listen
assert source.stream is not None, "Audio source must be entered before listening, see documentation for AudioSource; are you using source outside of a with statement?"
AssertionError: Audio source must be entered before listening, see documentation for AudioSource; are you using source outside of a with statement?
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/ryan/Desktop/stuff/code/Project Echo/main.py", line 43, in
query1 = Command_recognition()
^^^^^^^^^^^^^^^^^^^^^
File "/Users/ryan/Desktop/stuff/code/Project Echo/main.py", line 27, in Command_recognition
with sr.Microphone(device_index=1) as source:
File "/Users/ryan/anaconda3/lib/python3.11/site-packages/speech_recognition/init.py", line 189, in exit
self.stream.close()
^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'close'
System information
(Delete all the statements that don't apply.)
My MacOS Sonoma 14.4.1
My Python version is 3.11.0
My Pip version is 23.1.2
My SpeechRecognition library version is 3.10.3
My PyAudio library version is 0.2.14
My microphones are: ['Ryan’s iPhone 15 Pro Microphone', 'MacBook Pro Microphone', 'MacBook Pro Speakers']
My working microphones are:  the code outputs this: ||PaMacCore (AUHAL)|| AUHAL component not found.||PaMacCore (AUHAL)|| AUHAL component not found.{}
Also to note I am using a Anaconda environment

Hey @General-Hex,
This error typically indicates issues in accessing the audio hardware.
To resolve this, please ensure that your audio hardware is properly connected and configured. Also, make sure that your device isn't blocking the access request.

Hey @General-Hex, This error typically indicates issues in accessing the audio hardware. To resolve this, please ensure that your audio hardware is properly connected and configured. Also, make sure that your device isn't blocking the access request.

I’ve tried everything, I’m only using the inbuilt microphone of the MacBook and I have given both terminal and VScode all possible permissions including full disk access and microphone access still to no avail

Please check this out
Link to the issue.

None of those solutions have worked for me, do you have any specific solutions for me to try?

@thedarknight01 I also tried disabling all firewalls/filters, giving all permissions to vscode and terminal and also connecting a seperate microphone and using that device index to no avail. I tried uninstalling and reinstalling speech recognition, pyaudio and portaudio again to no avail. Apparently many people on macbooks (Mainly on M-chip series) are having this issue, is there any specific solution that has worked for them?

Please attempt these commands as the standard installation seems to be encountering issues. This alternative method often resolves many problems.
brew uninstall portaudio
brew install portaudio --HEAD

@thedarknight01 I’ve tried that multiple times sadly to no success. This is very frustrating because I had a plan for a super cool project but it isn’t possible without speech recognition. What else can I try?

I apologize for the inconvenience; I was having the same problem, which I resolved with the step. I'm unsure why, this is not working but don't worry—I'll figure something out.

@thedarknight01 thank you. Also I fully understand that this is not your fault and out of your control because apple probably did some sort of silly update that messed with things. let me know if there is any tests/anything else you would like me to try 😊

can't install pyaudio with the first command, gives this error:
Retrieving notices: ...working... done
Channels:
 - conda-forge
 - defaults
Platform: osx-arm64
Collecting package metadata (repodata.json): done
Solving environment: failed

PackagesNotFoundError: The following packages are not available from current channels:

  - pyaudio

Current channels:

  - https://conda.anaconda.org/conda-forge
  - defaults

To search for alternate channels that may provide the conda package you're
looking for, navigate to

    https://anaconda.org

and use the search bar at the top of the page.```

try after updating conda
conda update conda

IT WORKED, I don't know what did it but it finally worked, this is what i did:

fully uninstalled portaudio, pyaudio and speech recognition.
ran brew update && brew install portaudio --HEAD
ran python -m pip install pyaudio --no-cache
ran python -m pip install speechrecognition

and IT WORKED
only problem is that now for some reason this line is giving an error but not saying what the error is:
query = listener.recognize_google_cloud(command, language='en_gb')

oh because I need an account and its paid, i'll probably use openai whisper for that then but thank you very much 😊 (hopefully other people with this issue can solve it too)

OMG as soon as I closed the issue and tried to run the code again IN THE EXACT SAME WAY it starting throwing the attribute error again

@General-Hex I was about to suggest that authenticity may be the problem.
Now if your issue is solved please close the issue.
Happy Coding 😊.

the error started again, I changed NOTHING, it just stopped working all of a sudden

the attribute error that is with not being able to use my microphone, not the account error

I just updated my conda, could you give me a simple code to copy and paste to try because i'm currently using my original code (in my original issue post) which is only 47 lines long

its strange because it began working for 3 times i ran the code, then as soon as I closed this issue and tired one last time it failed

@thedarknight01 I SOLVED IT
the problem is that your iphone keeps connecting/disconnecting from your macbook meaning it keeps going into index 0 of the list of devices.

@thedarknight01 adding these lines of code should stop the issue for others too (but changing the name with the name of their own phone ofc):
devices = sr.Microphone.list_microphone_names()
    if devices[0] == 'Ryan’s iPhone 15 Pro Microphone': index = 1
    else: index = 0
    with sr.Microphone(device_index=index) as source:```

devices = sr.Microphone.list_microphone_names()
print(devices)
run this check the name of your microphone and replace it from there

I have before that is how I found the error, it gives the following:
['MacBook Pro Microphone', 'MacBook Pro Speakers'] or ['Ryan’s iPhone 15 Pro Microphone', 'MacBook Pro Microphone', 'MacBook Pro Speakers'] depending if my phone is connected or not which randomly changes


Methylation Calling Soft Clip Question

Hey,
Thanks for the great tool. Just wondering something.
I have reads which a large repeat sequence with flanking CpGs. This repeat is soft clipped, but along with it so is one of the flanking sequences. I'm interested in methylation either side of the repeat. How does nanopolish handle this? obviously one side of the repeat would be mapped properly so there is no problem there, then the other side is contained in the softclipped region. I get methylation calls for those bases, however, I have a sinking feeling that these are probably not correct (I do have reads in both directions though that agree).
Thanks for you help!
Matt

Hi @mattdmem,
The softclipped parts of reads should not be called. This sounds like a bug, can you send an example?
Jared

Thanks Jared. I'll do some in-depth investigation this week and if I find out that I'm getting calls in these areas I'll send over some examples.

Hi @mattdmem,
Any luck?


Allow for creation of unversioned shared libraries in cmake

In support of https://github.com/Unidata/netcdf-fortran/issues/43, we should add an advanced option along the lines of DISABLE_SHARED_LIBRARY_VERSION for cmake-based builds.  This is a harmless option that 99% of people won't need, but it should be useful for anybody who does need it.

Here's a bit more detail on what I'm seeing.

The find_package(netCDF) command is picking up the netCDFConfig.cmake file that was configured and installed when I built netcdf-4.4.0.
It returns with netCDF_LIBRARIES to "netcdf"  (struck me as odd that it was not a full path)
Later there is a target_link_libraries(netcdff ${netCDF_LIBRARIES}).  As expected, this results in the netcdf library being added to the link line, but it is the full path to the versioned file and not its .so link, which is there in the same directory.  All kinds of cmake magic going on here.

I don't know much about this stuff, but a colleague indicated to me that directly using the versioned file is not standard/good practice.  If so -- and he may be wrong about that -- the question is why is cmake generating that library name for the link line.  Perhaps real underlying issue is that there is something not quite right with the cmake configuration files installed by netcdf.


[Models] Fix enumeration of blocks in ResidualBasicBlockStack init

Small fix for correctly populating blocks with blockCount number of ResidualBasicBlocks as opposed to blockCount - 1.

Will this also need to be changed in ResidualIdentityBlockStack?

@BradLarson Sorry I didn't notice that! Thanks for letting me know.


Clear raw text emails.

Sent emails are currently optimized for HTML view. Raw text version is very unclear. It misses a clear representation.
(Proposed label: idea)

Thanks four your suggestion.
Currently we aim primary for company usage of 4Minitz. In this scenario HTML mails are no problem and the benefits (structure & readability) overrule the disadvantages (byte bloat) . So we would currently rank your suggestion down in our backlog. But nevertheless we'll keep this idea for the time beeing.
Maybe someone is willing to provide a pull request.


[Bug] [sql] sql节点跑hive任务，日志里没有application url

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
sql节点跑hive任务，日志里没有application url
What you expected to happen
sql节点跑hive任务，可以获取applcationid的执行进度
How to reproduce
不知道
Anything else
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

thanks for your feedback, please use English for better coommution

ok


ippValidateAttribute: Properly detect strings with an invalid last character

An ISO/IEC 8859-1 / Latin-1 string with an invalid last character whose UTF8 equivalent is a multi-byte sequence is currently not detected correctly in ippValidateAttribute, leading to a _dbus_check_is_valid_utf8 crash in relaxed conformance mode. The multi-byte sequence check in ippValidateAttribute expects that the following bytes exist, and this is not the case here.
To catch this case, I think ippValidateAttribute needs to check whether the string finishes midway in a multi-byte sequence check for IPP_TAG_TEXT* and IPP_TAG_NAME* strings.

If the approach in
https://github.com/vliaskov/cups/commit/4f0f44fc2f16a32164557332f2ab8feb135bd548
is ok, I can make a PR, let me know.

Hmm, I'm not keen on those changes. But I can see how a truncated string or one that sortof looks like UTF-8 could cause this.


1.21 wands from previous minecraft version do not contain minecraft:custom_data

The nbt tag for "wand" under custom_data does not exist on old wands.
we just gave the players replacement wands to fix the issue.
This could be this issue https://github.com/PaperMC/Paper/issues/11423

This could be this issue https://github.com/PaperMC/Paper/issues/11423

Was inventory management plugin and spigot/paper issue.


Squashing warnings

Squashing some warnings. I added
import traceback
import warnings
import sys

def warn_with_traceback(message, category, filename, lineno, file=None, line=None):
    traceback.print_stack()
    log = file if hasattr(file,'write') else sys.stderr
    log.write(warnings.formatwarning(message, category, filename, lineno, line))
    raise RuntimeError

warnings.showwarning = warn_with_traceback

to skopt/__init__.py and then ran nosetest --pdb. Is there a way to
get the same effect via env variable or commandline argument for nose?

+1 for the changes, not sure about your question though


Potential approaches for allowing mocked state

Playing with some ways to mock out state for testing. Each commit here is a separate approach.
Use an intermediate mocker singleton to control all mocked state
https://github.com/airbnb/MvRx/pull/72/commits/6ffc9c77be63994a3b1d83b446b2710f97db5d8f
Set a mock provider on the view model
https://github.com/airbnb/MvRx/pull/72/commits/d508554af7a894be4b220de14f1af4e18678a111
Definitely want to avoid making it too easy to set state so people don't use this outside of testing.

I agree both approaches seem like they would work. I kind of like being able to have all the mock states for different view models in one place and a single place to enable/disable all of them though.

Closed in favor or https://github.com/airbnb/MvRx/pull/81


Display ENS name (if available) while setting up a watch wallet

Current:

How it should be displayed (buzz Tomek if you need an Android variant)
https://zpl.io/aX1rqpX

Are you using a build installed from PlayStore/APK or building from AndroidStudio?
The behaviour should be different - we allow the ActionSheet if using a debug build, for testing.

The RC APK build.

OK then it's an issue that needs fixing.


libaries missing for fslview and fsleyes to work

Dear Jakub,
I used neurodocker version 0.4.0 to build --fsl version=5.0.11 with base debian:wheezy and fslview and fsleyes don't work due to missing libraries. I had to add these to make it work:
--install libdbus-glib-1-2 libjpeg62 libgtk2.0-0  libpng12-0 \
Not sure if this also affects other base images or how you handle different package names for different base images.
Thank you for working on neurodocker :)
Best
Steffen

hi @stebo85 - thanks for letting me know. i intentionally left out the dependencies for gui programs because i thought that in the vast majority of cases, these containers would be used for non-gui purposes (it can sometimes be tricky to run a gui through a container). but it seems i was wrong!
libpng12-0 is not in the debian stretch or ubuntu 18.04 repositories, so including it would cause an error  if trying to build on those base images. i can look into whether fsl can use libpng16, the version available in stretch and 18.04.
it would also be good to find the corresponding libraries for base images that use yum and not apt-get.
i can look into this, but it will take me several days. feel free to submit a pull request with changes, and thank you again for bringing this to my attention!

Dear @kaczmarj
I found the GUI versions to work very nicely in singularity images, but maybe not many people are using this, so it is reasonable to not spend too much time on this for neurodocker, as it seems to be quite a pain to get it working.
I tried to find a solution and it looks like libpng12-0 is not yet in debian stretch, but could be (http://forums.debian.net/viewtopic.php?f=10&t=130905) - so maybe this problem solves itself in the future. However, this library is only needed for the deprecated fslview, so maybe it is ok to ignore this and focus on the new fsleyes then? So, I tried to get fsleys to work, but I can only get it to work in Wheezy and not in Stretch, where I have problems with ZLIB (ImportError: /opt/fsl-5.0.11/bin/FSLeyes/libz.so.1: version `ZLIB_<IP_ADDRESS>' not found (required by /usr/lib/x86_64-linux-gnu/libpng16.so.16)) that I currently can't solve.
The yum baseimages look better and it only needed gtk2 to get fslview it to work, but fsleyes fails with ImportError: /lib64/libharfbuzz.so.0: undefined symbol: FT_Reference_Face in Centos:7 - maybe a newer baseimage would help?
It all works fine in Wheezy - so I am using this for now for my own images and add the libraries manually. I guess it is not worth a pull request as it still doesn't work consistently across all base images and needs a lot more thought :/

I tried running FSLeyes on debian stretch and also ran into the libz.so.1 error. to my naive eye, it looks like libpng16.so.16 is somehow dynamically linking to the libz that fsl packages, instead of the system's libz. my bet is that if it dynamically linked to the system's libz, that error would go away.
regarding the error withFT_Reference_Face, centos:7 is the latest version of centos. in fact, it might work if you go to centos:6. when a user requests fsl with --fsl, neurodocker downloads the pre-compiled fsl binaries hosted on fsl's website. those binaries are compiled on centos 5 (now end-of-lifed) or centos 6. i chose to use these because they should work on most newer systems. but as we see here, the gui pieces don't work.
at the very least, we can add an example in the examples directory to show users how to get fsleyes to work in a container. i'd welcome a PR for this if you're up for it!

Hi
I tried the above command and got the following error.
Gtk-Message: Failed to load module "canberra-gtk-module"
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
The program 'fsleyes' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadValue (integer parameter out of range for operation)'.
(Details: serial 960 error_code 2 request_code 155 minor_code 24)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
I am using docker on ubuntu 18.04 with Nvidia drivers
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001F36sv00001028sd00000926bc03sc00i00
vendor   : NVIDIA Corporation
driver   : nvidia-driver-435 - distro non-free
driver   : nvidia-driver-440 - distro non-free recommended
driver   : xserver-xorg-video-nouveau - distro free builtin
am I missing anything else?
Thanks
Anil

I believe this was answered, but please feel free to reopen


Get service instance from the "global" scope

Hello,
If I inject angular service into a controller, the angular creates new instance and put it into instanceCache object... so there is only one instance of the service even if I use more controllers (it's a singleton).
However, I would like to get that one instance from instanceCache outside the controller.
I know there is a possibility how to achieve this within new angular.scope()....

var scope = angular.scope();
var myService = scope.$service('Id of myService under which it was registered');

.... but this code creates new instance of myService so if I inject myService also into controller, now I have 2 separate instances in the application.
Is there any way how can I achieve this with angular.js?
I tried also angular.element('selector to whatever').scope() is always undefined.... I hoped I can access the scope of the controller and get service from that scope.

this can be done as follows:
var scope = angular.element(document); //or some other element of the compiled template
var myService = scope.$service('myService');

Again, please ask on mailing list first...  http://groups.google.com/group/angular

So you should be able to do it like this
angular.element('selector').scope().$service('myServiceId');
However, the scope is not created until after the document load event.
It may be easier to just publish the service to the window.
Better question is: What are you trying to achieve, this seems to go against
the zen of angular.
-- misko
2011/10/14 lukaszdechovan <
<EMAIL_ADDRESS>
Hello,
If I inject angular service into a controller, the angular creates new
instance and put it into instanceCache object... so there is only one
instance of the service even if I use more controllers (it's a singleton).
However, I would like to get that one instance from instanceCache outside
the controller.
I know there is a possibility how to achieve this within new
angular.scope()....

var scope = angular.scope();
var myService = scope.$service('Id of myService under which it was
registered');

.... but this code creates new instance of myService so if I inject
myService also into controller, now I have 2 separate instances in the
application.
Is there any way how can I achieve this with angular.js?
I tried also angular.element('selector to whatever').scope() is always
undefined.... I hoped I can access the scope of the controller and get
service from that scope.
--
Reply to this email directly or view it on GitHub:
https://github.com/angular/angular.js/issues/595

I don't understand why, but @drumaddict's solution didn't work until I flipped the modules listed in the injector method call:
SERVICE_REGISTERED_IN_myMOD =angular.injector(['ng', 'myMOD']).get('SERVICE_REGISTERED_IN_myMOD');


Adding a Hamburger icon to the navbar

Describe the feature
The navbar looks too clumsy since there are multiple elements present on it . Adding a hamburger and keeping only relevant elements appear makes it clear and simple
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

work on the issue and raise a pr.


Fix color tokens

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Resolves: # (issue, if applicable)
Summary:
Please summarize the scope of the changes you have submitted, what the intent of the work is and anything that describes the before/after state of the project.
Type of change:
Please delete options that are not relevant.

[x] New capability
[x] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[ ] Other (please elaborate)

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team
Summary by Sourcery
Fix color token references and refactor component registration to use RuntimeUtils for improved consistency and maintainability. Update documentation to reflect these changes.
Bug Fixes:

Correct color token references for subtitle and title colors in SCSS files to use appropriate tier 2 tokens.

Enhancements:

Refactor component registration to use RuntimeUtils for registering custom elements, improving consistency and maintainability.

Documentation:

Update documentation to reflect changes in component registration method using RuntimeUtils.

:tada: This PR is included in version 4.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Command-line --help / -h switch broken

In honor of Murphy, who was right afterall (If anything is not in the shipment test, it will break).
It's the *$#@!!! % in the explanation of the -jm switch...
Will be repaired and in the shipment test in next commit.

stupid % , arg..
now i'm feeling really bad about the delay of the config mod :-/
I would prio this high, since it made it also into the pip distri, and people will hopefully try it after tomorrow.

this is really superhigh prio, again : it is in the pip install transcrypt version (!) will cause immediate run away effects, I would fix it first, and only after that think about how to include in tests.

I've committed the fix already yesterday, so it should be no problem!

whew, so delighted.
including the test...your productivity is so amazing.

There's a new medical research project coming up for me though,
So the coming months I'll really have to concentrate upon the language core.


Support init containers for Envoy deployments managed by EG

Description:
EG uses the EnvoyProxy resource to configure Envoy deployments it creates and manages. Today the API allows users to configure a lot of aspects of the Envoy deployment in k8s, but does not allow init containers to be configured. This makes it challenging to do things like use Vault's init container to provide initial certs, or use simple patterns for loading WASM binaries into an Envoy container without a custom Envoy image.
It would be helpful in an InitContainer field was added to the KubernetesDeploymentSpec to allow init containers to be provided by the user. Even better if this field was repeated to allow for multiple init containers. (The same could be said for making the Container field repeated, to allow multiple containers in the Envoy pod, though there's not a clear use case for that today unlike init containers.)

looks like this is the second request for initContainers , which was also raised by @ardikabs ( see https://github.com/envoyproxy/gateway/issues/1829)
if the initContainers approach is a more favorable approach to add files (library.so & wasm) for users, imo we should just it in the API

hi @arkodg , i am interested to pick this up, could you assign it to me? thanks.


Merge output from evolutionary search into one document

Describe the desired feature
As an evolutionary search :slot_machine: progresses, a series of summary files are produced, including:
convergence__staged_relaxations.html
convergence__time_vs_energy_per_atom.html
distribution_of_energy_per_atom.html
distribution_of_subworkflow_times.html
history_of_the_best_individuals.md
Rather than writing these to five different files, I think it'd be useful if they were all written to a single html file.  That way I only have to bother to open/close one file, not five.
Additional context
No response
To-do items
notes by @jacksund :

[x] condense workflow outputs to database objects
[x] streamline Figure registration from a database table/object
[x] allow figures to be written to file and html div with single implementation
[x] add default method for writing summary output from db object
[x] link to website URL for viewing all results on a single page
[ ] add templates and views for structure-prediction flows

Agreed, I'd like to move in this direction as well. 👍
I also think the same can be requested for the other summary files too (i.e. merge all outputs into a single "report" file). If we're building a larger html file, we might as well include everything we need. Keep running with this idea, and we end up with a website/django view.
Ideally, I think the only "output" files should be (1) a URL link to the website view (even to a local server link) and (2) a "static html" of the website view. This addresses many output files and moves toward a single "report" html (which is also a view in the website).
I've planned on doing this for all workflows (not just the evo search) but haven't had much time to put towards website templates. However, I can set up the basics to address this issue. Since you've built django templates before, you'll easily be able to update things once I have the main template set up.

Below are just notes on how I would write a static html locally for the view

from django.template.loader import get_template
from django.template import Context

template = get_template(template_src)
context = Context(context_dict)
html  = template.render(context)

https://docs.djangoproject.com/en/4.1/ref/templates/api/#loading-a-template
https://docs.djangoproject.com/en/4.1/ref/templates/api/#rendering-a-context

Also see the render_to_string method:
from django.template.loader import render_to_string
rendered = render_to_string('my_template.html', {'foo': 'bar'})

https://docs.djangoproject.com/en/4.1/topics/templates/#module-django.template.loader
https://docs.djangoproject.com/en/4.1/topics/templates/#django.template.loader.render_to_string

@scott-materials
I've streamlined how results are used when writing output files + making the web UI.
While the last few PRs might seem like overkill, they're pretty important for streamlining our code -- and not having to implement things multiple times & in multiple places.
Before these PRs, the processes were isolated for results+output files and database+webUI. This was easier when starting out Simmate, but it's now reached the point where maintaining two implementations was too difficult.
Here's how it looked before:
graph LR
  A[Calculation run] --> B[Results];
  B --> C[Save to output files];
  B --> D[Convert to database object];
  D --> E[Save to database];
  E --> F[Build into html template];

Here's how things work now:
graph LR
  A[Calculation run] --> B[Results];
  B --> C[Convert to database object];
  C --> D[Save to database];
  D --> E[Save to output files];
  D --> F[Build into html template];

adding new plots
Now if you have a script that builds a plot from a database table, I can immediately add it to both output files AND the website UI. This will be very important as Simmate grows. How to build a new plot:
from simmate.visualization.plotting import PlotlyFigure

class MyNewPlot(PlotlyFigure):

    def get_plot(table, chemical_system,):
        data = table.filter(...).all()  # grab data from the table
        # .... make a plotly figure and return the object ....
        return plot

end goal
Ultimately, there will be a link to the website pages, but no local "report" file. In the simmary_summary.yaml file will be everything you need -- URL link, database table, database id.
Saving a local html has complications due to...

links and static assets will not work
building the html will be slow and affect workflow speed
building a minimal template falls back to the original issue (maintaining two implementations of the same thing)

So this issue will be closed once there is a website view for structure-prediction workflows. There won't be a single file as you originally requested, but there will be the (even better) option of viewing things in the website UI.

Impressive!  I like it!

@scott-materials I haven't done any html formatting, but everything is in a single page now. You can check out the html here. In the template, calcuation is the database table object (so FixedCompositionSearch.objects.get(id=123))


Add default configuration

Import the default configuration from
https://github.com/rubocop-hq/rubocop/blob/69fe5d22e09e6d6250331e9d0a38a27fbf9bdfc8/config/default.yml#L1660
and
https://github.com/rubocop-hq/rubocop/blob/69fe5d22e09e6d6250331e9d0a38a27fbf9bdfc8/config/enabled.yml#L919
We also need a good way to load up the defaults. We could do something like what is in rubocop-rspec:
https://github.com/rubocop-hq/rubocop-rspec/blob/6b2ab090531d67673730584d26f62603bcdef5e4/lib/rubocop-rspec.rb#L26
https://github.com/rubocop-hq/rubocop-rspec/blob/6b2ab090531d67673730584d26f62603bcdef5e4/lib/rubocop/rspec/inject.rb
But perhaps maybe there is a way we can add some of this to rubocop directly. rubocop-rails is going to need something similar.

I think duplicating rubocop-rspec’s hack would be short-sighted. We regularly run into issues with identically named cops in different namespaces, etc.
There is an old issue open on RuboCop about formalizing an extension API: https://github.com/rubocop-hq/rubocop/issues/3414 – I hope @backus will rejoin the discussion.

I'd like to solve the problem with the following PRs until the better API is developed.

https://github.com/rubocop-hq/rubocop-performance/pull/26
https://github.com/rubocop-hq/rubocop-performance/pull/25

First of all, I'd like to aim for release similar to RuboCop RSpec. Thank you.

I will close this issue because the purpose of adding the default configuration is solved.


xrun: update xrun_run to work with new behaviour of domain_create

On the latest version of the domain_create call it's work behavoiur was changed to return domid instead of 0 if operation was succeeded. Also, domain is started automatically so update xrun_run call to match the new device_create call revision.

@firscity updated


[with-apollo] Reduce boilerplate

Hi there.
I believe the current example for Apollo usage has an unnecessary boilerplate size. For instance, there is no need to make _app.js render method aware of Apollo - we can solve everything in the connector (with-apollo-client).
Are you guys open to pull-requests? I can either work on a pull-request with refactoring suggestions, or on an alternative example.

Feel free to open a PR to improve and we'll review it 👍