Docs updated for The Graph: Supports both mainnet & testnet. +Cleanup

What changed? Why?

Supported networks - Only showed mainnet. The Graph supports both Mainnet & Testnet
Overall wording - Simplified to highlight benefits/features in bullet points.

Notes to reviewers
We wanted to make sure devs know they can build subgraphs on Testnet too, to make their transition to mainnet as seameless as possible.
The docs were also updated to be clear & concise with The Graph's benefits & features.
How has it been tested?
Looks fine locally.

🟡 Heimdall Review Status

Requirement
Status
More Info

Reviews

🟡
0/2

Denominator calculation

Show calculation

1 if user is bot
0

1 if user is external
0

From .codeflow.yml

1

Additional review requirements

Show calculation

Max
0

0

From CODEOWNERS

0

Global minimum
0

Max

1

1

1 if commit is unverified
1

Sum
2

Review Error for wbnns @ 2024-12-06 17:26:27 UTC
User failed mfa authentication, see go/mfa-help

Review Error for hughescoin @ 2024-12-09 22:45:32 UTC
User cannot review their own commit

Review Error for ericbrown99 @ 2024-12-10 01:50:01 UTC
User failed mfa authentication, see go/mfa-help


Xylophone instrument simulator

Make a xylophone simulator that allows user to play cool music!

@991rajat  I would like to work on this


Figure out oi/ooi/oei/ui conflicts

These have all the same vowel key, so loei, looi, and lui are all written as loi (and also, loi* is for luie). This kind of conflict turns out to be pretty common (mooi / mui, tooi / tui, oei / ooi / ui, sproeit / spruit, ...) and is annoying to solve (* is not always available for other reasons).
I see two possible solutions:

write ui as au, write au (and ou) as ou instead;
write ui as ou, write ou (and au) as au instead.

Both have the advantage that the au/ou sound is not spelling-based anymore, but there could be some conflicts there (also with the current usage of au for prefixes, for example aut is currently uit^).

Jeremy actually uses the first option: ui as au, au / ou as ou. Seems sensible to follow that then, that brings us one step closer to being able to merge our systems :slightly_smiling_face:

Actually, why am I not using eu (AO) for prefixes? I just checked all occurrences of eu in the dictionary, and they all represent actual eu. But in the readme, it is mentioned that eu is also used as a random disambiguator (which makes sense, considering how little eu actually occurs). That probably got switched around in my mind.
Anyway, let's do the following:

Change all prefixes to use eu (AO) instead of au.
(Get used to that change.)
Change all au words to be ou instead of au.
(Get used to that change.)
Change all ui words to be au instead of oi.

Then we'll get (with ui = AU):

oei oi
ooi oi
ui ui
au ou
ou ou
...^ eu

loei loi
looi loi*
lui(e) lui(*)
lauw louw

mooi(e) moi(*)
mui mui

mouw mouw

tooi toi
tui tui
tau tou
touw touw

oei oi
ooi oi*
ui ui
au ou

sproeit sproit

spruit spruit

klooit kloit
kluit kluit
klauwt klouwt

uit uit

uit^ eut

Finished the first step: prefixes are now written with eu (AO). Only two conflicts:
"TAO*": "{tegen^}"     // with star because "TAO" is "{toe^}" now
                       // (and "TAO*G" is "{tegenge^}")

"TKAO*R": "deur"       // with star because of "TKAOR" for "{door^}"


Server crash

Invalid memory access (signal 11) at address 0x0
[0x10483c140] print_backtrace at /opt/homebrew/Cellar/crystal/1.13.2/share/crystal/src/exception/call_stack/libunwind.cr:100:5
[0x10483bc08] -> at /opt/homebrew/Cellar/crystal/1.13.2/share/crystal/src/crystal/system/unix/signal.cr:171:5
[0x1b04774a4] _sigtramp +56 in /usr/lib/system/libsystem_platform.dylib
[0x10488ad40] valid? at /opt/homebrew/Cellar/crystal/1.13.2/share/crystal/src/array.cr:1415:5
[0x10488aad0] capture_allowed? at /Users/sija/Code/gphoto2-web.cr/lib/raven/src/raven/configuration.cr:367:7
[0x10495cae4] capture_allowed? at /Users/sija/Code/gphoto2-web.cr/lib/raven/src/raven/configuration.cr:374:7
[0x10495c73c] call at /Users/sija/Code/gphoto2-web.cr/lib/raven/src/raven/instance.cr:131:14
[0x104953934] call at /opt/homebrew/Cellar/crystal/1.13.2/share/crystal/src/http/server/handler.cr:30:7
[0x104953800] call at /opt/homebrew/Cellar/crystal/1.13.2/share/crystal/src/http/server/handler.cr:30:7
[0x104952980] call at /Users/sija/Code/gphoto2-web.cr/lib/raven/src/raven/integrations/kemal/log_handler.cr:38:26
[0x10494da88] handle_client at /opt/homebrew/Cellar/crystal/1.13.2/share/crystal/src/http/server/request_processor.cr:51:11
[0x10483e3e4] run at /opt/homebrew/Cellar/crystal/1.13.2/share/crystal/src/fiber.cr:143:11

Looks like raven is not handling well MT...


Basic driver controls

Using the drivetrain subsystem being worked on in #3, set up basic driver controls using joysticks.

All set, added via Graphite Workflow in #18


Changes NLTK Data Location and Adds mlfinlab Package

Description

Use /usr/share/nltk_data instead of /root/nltk_data.
Tidies the root directory of the docker image
Adds support to mlfinlab
Adds test for NLTK and mlfinlab.

Related Issue
Closes #3771 #3791
Motivation and Context
Fixes and add support to 3rd party libraries
Requires Documentation Change
Update the supported packages list.
How Has This Been Tested?
Unit tests.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Non-functional change (xml comments/documentation/etc)

Checklist:

[x] My code follows the code style of this project.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.
[x] My branch follows the naming convention bug-<issue#>-<description> or feature-<issue#>-<description>

For next update please remove the packages inline instead of waiting until the end,


Get standard category attributes by attribute_code

Currently the CategoryReader fetches the standard category attributes by attribute_id, but we have to fetch them by attribute_code, to get the correct data.

[public] Shopware automated response: This issue is linked to the internal issue: MIG-747
[created from MIG-747, comment 497210]


Spamhaus false positives with public DNS

We've recently hit issue with
https://www.spamhaus.org/news/article/807/using-our-public-mirrors-check-your-return-codes-now
Log:
2022-08-26T11:34:46.185Z [DEBUG] [data.uribl] (envfrom) found 1 items for lookup
2022-08-26T11:34:46.185Z [DEBUG] [data.uribl] (envfrom) checking: domainexample.cz
2022-08-26T11:34:46.191Z [DEBUG] [data.uribl] domainexample.cz.dbl.spamhaus.org. => (<IP_ADDRESS>)
2022-08-26T11:34:46.191Z [INFO] [data.uribl] found domainexample.cz in zone dbl.spamhaus.org (<IP_ADDRESS>)
2022-08-26T11:34:46.191Z [INFO] [core] hook=mail plugin=data.uribl function=hook_mail<EMAIL_ADDRESS>retval=DENY msg="domainexample.cz listed in dbl.spamhaus.org; see http://www.spamhaus.org/query/dbl?domain=domainexample.cz"
We can fix it either by noticing it in documentation or/and matching 127.0... only (I expect 127.0.* in valid cases only...)

Yep https://www.spamhaus.org/faq/section/DNSBL Usage#200


Add note about install on Win10 linux subsystem

Add a link to the gist detailing how to install these scripts in Windows 10’s linux subsystem (also for potentially better performance).

any thoughts and commendts welcome - I tried to make it as succinct and short as possible, yet still include the link and sort of a warning. My reasoning is that if it's not linked here, nobody will ever really find it. ;-)

@JMoVS Thanks! That looks good. I'll take a closer look later today but I'll probably take this before the next release so it shows up on the GitHub page sooner.

@donmelton As your next release is seemingly right around the corner, maybe you can include this in conjunction with the result of https://github.com/donmelton/video_transcoding/issues/90

@JMoVS Yes, that's the plan. I'm also trying to get the change for https://github.com/donmelton/video_transcoding/issues/88 into that release.

wow, you're really fast! Sounds awesome! Big thumbs up from me! 👍

I spent some time last night going through the gist that's linked in the proposed change, and I was unsuccessful. I got stuck with linuxbrew failing to install pkg-config. I'll try again this evening with a fresher head and see if I can get any further, but that's a conversation for another place
I think it's worth having a note in the readme about using the linux subsystem on Windows but possibly leave figuring out how as an exercise to the reader; similar to how the readme currently just says it's possible to set the scripts up on Windows, but includes no specific steps on how to achieve this

@samhutchins Hi, I'm the author of said gist. I proposed it there because it give sguidance and figuring this out involved a lot of back and forth on multiple issues on linuxbrew's side. If you could comment on the gist with the error that you encountered, I may be able to help you and update the gist accordingly.
My take so far is: Without this gist, nobody will seriously even manage to do it unless you're doing it as a pet project investing multiple hours. Also, I don't see how it hurts having it there.
So I'm looking forward to hearing from you about the issue and then updating the gist taking that into account. ;-)

@JMoVS I didn't actually merge this because I didn't like the wording or formatting. :) So I rewrote the whole thing and checked it in as commit https://github.com/donmelton/video_transcoding/commit/9fd4b8ef4e0e3959e1d1d1a339aa7c9c3ac6c472.
But I'll still reference this pull request in the release notes later.
Thanks again!

@donmelton  jebus, you did put that in a hell of a more prominent spot than my original suggestion. Wow. Thank you! Very curious to see the responses. And thank you for the PR reference ;-)


Please check if anything wrong with my setup. Thanks!

olivergiangvu@homedocker:~/SeerrBridge$ python3 seerrbridge.py
/home/olivergiangvu/SeerrBridge/seerrbridge.py:1145: DeprecationWarning:
on_event is deprecated, use lifespan event handlers instead.
    Read more about it in the
    [FastAPI docs for Lifespan Events](https://fastapi.tiangolo.com/advanced/events/).

@app.on_event("startup")
INFO:     Started server process [832732]
INFO:     Waiting for application startup.
2024-11-26 15:45:10.904 | INFO     | main:startup_event:1148 - Starting SeerrBridge...
2024-11-26 15:45:10.906 | ERROR    | main:check_and_refresh_access_token:214 - Access token is not set. Requesting a new token.
2024-11-26 15:45:10.907 | INFO     | main:refresh_access_token:145 - Requesting a new access token with the refresh token.
2024-11-26 15:45:11.825 | ERROR    | main:refresh_access_token:173 - Failed to refresh access token: Unknown error
2024-11-26 15:45:11.827 | INFO     | main:initialize_browser:238 - Starting persistent browser session.
2024-11-26 15:45:13.328 | SUCCESS  | main:initialize_browser:254 - Initialized Selenium WebDriver.
2024-11-26 15:45:14.376 | SUCCESS  | main:initialize_browser:258 - Navigated to Debrid Media Manager start page.
2024-11-26 15:45:15.049 | INFO     | main:initialize_browser:264 - Set Real-Debrid credentials in local storage.
2024-11-26 15:45:15.683 | SUCCESS  | main:initialize_browser:268 - Refreshed the page to apply local storage values.
2024-11-26 15:45:15.684 | INFO     | main:login:219 - Initiating login process.
2024-11-26 15:45:16.058 | INFO     | main:login:227 - Clicked on 'Login with Real Debrid' button.
2024-11-26 15:45:16.059 | INFO     | main:initialize_browser:274 - Attempting to click the '⚙ Settings' link.
2024-11-26 15:45:26.492 | ERROR    | main:initialize_browser:310 - Error while interacting with the settings popup: Message:
Stacktrace:
#0 0x55d134e8031a
#1 0x55d1349966e0
#2 0x55d1349e53e6
#3 0x55d1349e5681
#4 0x55d134a2ab04
#5 0x55d134a0948d
#6 0x55d134a27ed7
#7 0x55d134a09203
#8 0x55d1349d7cc0
#9 0x55d1349d8c9e
#10 0x55d134e4dd0b
#11 0x55d134e51c92
#12 0x55d134e3ab3c
#13 0x55d134e52807
#14 0x55d134e200df
#15 0x55d134e6f578
#16 0x55d134e6f740
#17 0x55d134e7f196
#18 0x7f9322396ac3
2024-11-26 15:45:26.494 | INFO     | main:initialize_browser:313 - Navigating to the library section.
2024-11-26 15:45:29.086 | INFO     | main:initialize_browser:324 - Library loading.
2024-11-26 15:45:29.088 | INFO     | main:initialize_browser:327 - Waiting for 2 seconds on the library page.
2024-11-26 15:45:31.092 | SUCCESS  | main:initialize_browser:329 - Completed waiting on the library page.
2024-11-26 15:45:31.094 | INFO     | main:startup_event:1163 - Started request processing task.
2024-11-26 15:45:31.098 | INFO     | main:schedule_token_refresh:1142 - Scheduled token refresh every 10 minutes.
Do you want to start the initial check and recurring task? (y/n): 2024-11-26 15:45:41.111 | INFO     | main:startup_event:1184 - Initial check and recurring task were skipped by user input.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://<IP_ADDRESS>:8000 (Press CTRL+C to quit)
y
^CINFO:     Shutting down
INFO:     Waiting for application shutdown.
INFO:     Application shutdown complete.
INFO:     Finished server process [832732]

@olivergiangvu it appears to be having an issue finding the settings button.
Either its not logging in properly using your tokens from DMM, or there is a Popup like the expiry popup, blocking the settings button (to set a filter).
Can you run this out of headless mode and test?
Comment this headless line out

like this

BTW, I have updated the code and the headless option has moved to the .env file

I'm having this same issue, running without headless gets me stuck at a cloudflare page trying to verify my humanity

Closing this due to inactivity. We have made further releases that can hopefully remedy some of these issues.
If you continue to experience issues, please let us know!


Python3 setup not working

$ python -V
Python 3.6.9

$ sudo ./setup.py
  File "./setup.py", line 165
    print self.message,  # comma stops print from adding line break at the end
             ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(self.message,  # comma stops print from adding line break at the end)?

This is important with the Python 2 end of life.

Any updates on this?  This could really be useful for my project.

There's an open PR for support: https://github.com/awslabs/collectd-cloudwatch/pull/91

If this issue is addressed it'll most likely fix the RHEL8 compatibility issues recently raised:
https://github.com/christiangda/ansible-role-amazon-cloudwatch-agent/issues/29

Any progress on this?  I was really hoping to use this on my Raspberry Pi, but it only has Python 3.

Agree, would like this as well for Raspberry Pi (Python 3)

Is this project active/supported any more?
Was looking for a Python3 implementation.


Various S3 Fixes

fix default endpoint not carrying protocol
fix list cache time not being written to
update cache on deletion
update tests accordingly

Good catch about needing to update the local cache.

cf. commits for list of changes

Please also summarize the changes in the PR description. That makes it easier to create release notes and later reference the changes in this PR.
In this case the local cache updating bugfix is important to mention.

Please also summarize the changes in the PR description

Updated this along with the requested changes!

Going for cache invalidation instead of local cache update, at least for now.

The description could use a few words on how this PR affects the update marker optimisation and why. Even after reading the changes twice it is not clear to me what it fixes or improves and if the changes are correct.


Add I dont wna cry (haste) by Kurffew

Song Name
I dont wna cry (haste)
Artist Name
Kurffew
Source
Youtube
Youtube Link
NIJtEybSCCOzUKdg
Direct File Link
https://www.I don't wna cry.com/song.mp3
Song ID
1151602
Extra
Created from Auto Nong.
Created for level: 102320078

song link doesnt work, please fix


vernemq performance test

#941 # Environment

VerneMQ Version:
OS:Centos 7
Erlang/OTP version (if building from source): Erlang/OTP 20 [erts-9.3] [source] [64-bit]
VerneMQ configuration (vernemq.conf) or the changes from the default (changed the maxconnections to 1000000/1 million)
Cluster size/standalone: standalone

Expected behavior

I used the same machine(8 cores cpu and 32G ram), when i test with mosquitto with 6 vps, each vps makes 50000 subscribe,  and i find it can reach about 300000 connections。
but when i stop mosquitto and start vernemq to do the same test, i find the max connections is about 60000。

I want to use vernemq broker since it is easy to build a broker cluster,  what kind of paramters need i configre to impove the performance of vernemq?  is there any solutions?  thanks！

Hi,
Thanks for opening the issue - unfortunately we can't help without knowing what kind of limit it is you're running into. You might find some good advice in other older issues - the 60000 number is usually some kind of port exhaustion problem, though.
As this isn't really a bug report or feature request I'll close it for now - you're also welcome to ask on the community slack channel https://slack-invite.vernemq.com/ but more information will be needed to be able to help.
Hope this helps.


Gradient methods tutorial

A tutorial which gives an overview of all existing gradient methods for quantum circuits.
Summary:
The tutorial does not go into details about how each method works what their specific performance on certain tasks is. Instead it aims to provide an overview of the most prominent methods and give the reader a central location to compare methods and find further literature and Pennylane demos.
Possible Drawbacks:
The tutorial has to be quite superficial, especially for more advanced methods, which rely on involved mathematical insights.
Note
Gradients for pulse-based circuits exist and are an ongoing field of research. As of now the tutorial does not contain any information on them, other than two references.

Thanks again, @trbromley, @CatalinaAlbornoz, @orielkiss for all your comments and suggestions. I think the tutorial has evolved quite positively.
I have addressed or commented on all review comments. If the fix was straightforward I resolved the conversation, otherwise I left it open. I also tried to add the respective commits for traceability. Please let me know what you think.

I close it for now, we can come back to it in the future.


Dynamic backend

output format
A json list of objects that represent a node in the taxonomy tree. Each object has 3 keys:

long: name of the taxonomy node
short: shortened (unique) name
parent: reference to parent's short

[
    {
        long: "Test execution",
        short: "execution",
        parent: "scope"
    },
    {
        long: "Solving new problem",
        short: "solving",
        parent: "effect"
    },
    ...
]

Maybe it's a good idea to change long and short to name and id, respectively?
internal schema
Collection taxonomy is stored as a json file. The base serp taxonomy is read from some json file and kept in memory.
There are only two actions possible: read and write. To guard against nasty race conditions and out-of-date writes we will use versioning. Each read will return the version id, and each successful write will increase it. A version id must be included in the write request and must be >= than the current value, otherwise the request is denied.
modifications
/collection/{id}/add-entry must now clone the entry.
/collection/{id}/remove-entry must now delete the entry.
A new endpoint /collection/{id}/taxonomy must be added for GET and PUT.
A new endpoint /collection/{id}/classify must be added for reclassification of entities.

It is now implemented


progress bar scaling

The progress bar does not scale proportionally with the size of the canvas.

Progress shader now takes UV coordinates instead of gl_FragCoord, so scaling the progress should not be an issue now.


feat: juno analytics

Motivation
Enable the Juno's analytics (feature currently in a trial phase) for gix.design.
Changes

add dependency @junobuild/analytics
copy worker on post install
init analytics for the dapp (showcase of the gix-cmp)

I'd love to try that. They are on-chain, right?

@lmuntaner yes on chain. I'm starting the trial phase to collect data and find what needs to be improved before making it public to everyone. Therefore thought about adding those to gix-cmp as well. It can also be interesting for the team to know if gix.design is used. So win win 😉.

It looks super cool!!
We could even consier adding it to nns-dapp, right?

It's definitely achievable.
It will be integrated within Juno, but from a technical standpoint, I've designed it to be agnostic. That was it can potentially become a standalone product and an option for any dapps.


Use a standard parameter from the standard definitions.

I expect
that common arguments should be in the definitions and/or referenced via $ref

@gunzip what do you think? is this going to break our model generation script?

Close and reopen with a comprehensive patch.


Game won't continue after using hellish rebuke

When in combat and an enemy attacks the warlock, there is a popup saying "Instability detected" and when my warlock uses hellish rebuke, the enemy's turn never ends. The same happens if the warlock does not use hellish rebuke from the prompt. Everyone is standing there, doing default animations, with "Enemy turn" printed in big friendly letters at the bottom of the screen.

What is your game and mod versions? Care to share a save?

This is a known issue if you get Hellish on both class and race. Same problem currently exists on next DLC beta build. I shared the problem with TA and will wait for them to fix it.
thanks for reporting. Meanwhile I suggest Respec the warlock to not take Hellish or choose a race that doesn’t have it

Ah, ok! Thank you for all your efforts! Highly appreciated.


Fix docker login

Run docker login -u $DOCKERHUB_USER -p $DOCKERHUB_ACCESS_TOKEN
Error: Cannot perform an interactive login from a non TTY device
##[error]Process completed with exit code 1.

🤔

https://github.com/amutake/satysfi-docker/blob/05e16ca7dcc250f9e05b19a797403789381610c7/.github/workflows/nightly.yml#L10
😭


compare workspace branches

Description

Issues Resolved

Screenshot

Testing the changes

Check List

[ ] All tests pass

[ ] yarn test:jest
[ ] yarn test:jest_integration

[ ] New functionality includes testing.
[ ] New functionality has been documented.
[ ] Update CHANGELOG.md
[ ] Commits are signed per the DCO using --signoff

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 35.24%. Comparing base (790c076) to head (6ddac19).
Report is 27 commits behind head on feature/optional-workspaces-params-in-repository.

Additional details and impacted files
@@                                  Coverage Diff                                  @@
##           feature/optional-workspaces-params-in-repository      #10       +/-   ##
=====================================================================================
- Coverage                                             67.00%   35.24%   -31.77%
=====================================================================================
  Files                                                  3307     1925     -1382
  Lines                                                 63614    37976    -25638
  Branches                                              10163     5476     -4687
=====================================================================================
- Hits                                                  42627    13383    -29244
- Misses                                                18518    23977     +5459
+ Partials                                               2469      616     -1853

Flag
Coverage Δ

Linux_1
?

Linux_2
?

Linux_3
?

Linux_4
?

Windows_1
35.24% <ø> (ø)

Windows_2
?

Windows_3
?

Windows_4
?

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Recommended Specs

Due Diligence

[X] I have done my due diligence

What can we help you with?
Hi,
Are there any minimum recommended specs for running raspotify? I'm looking to purchase a new Pi now they're back in stock for this as all my existing ones are deployed so figured I'd check what the requirements are. I was planning on using a Zero 2 W along with an audio board (e.g. https://shop.pimoroni.com/products/pirate-audio-line-out?variant=31189750546515). Does this seem suitable?
I've searched around for this a little but I couldn't find much other than the fact that Zero 1.x is no longer supported.
Cheers

For sure, a Pi Zero v2 will work great. I have one and run the 64 bit version of Raspberry Pi OS Lite (the headless version, no Desktop Environment) on it. Raspotify runs great on it. That's basically my reference potato. I make sure Everything works really well on the PI Zero v2. I use a USB DAC (Topping D10S) I've never used that HAT so I couldn't tell you anything about the audio quality? It probability uses the same basic design as just about every other PI HAT DAC? I'm assuming it's meh, in the grand scheme of things but you gotta consider the price, which ain't bad. I also don't know anything about the screen or their software to display and control(?) Spotify? Raspotify doesn't have anything to do with any of that. I personally would up my budget to like $60 and get a better USB dongle DAC.

For sure, a Pi Zero v2 will work great. I have one and run the 64 bit version of Raspberry Pi OS Lite (the headless version, no Desktop Environment) on it. Raspotify runs great on it. That's basically my reference potato. I make sure Everything works really well on the PI Zero v2. I use a USB DAC (Topping D10S) I've never used that HAT so I couldn't tell you anything about the audio quality? It probability uses the same basic design as just about every other PI HAT DAC? I'm assuming it's meh, in the grand scheme of things but you gotta consider the price, which ain't bad. I also don't know anything about the screen or their software to display and control(?) Spotify? Raspotify doesn't have anything to do with any of that. I personally would up my budget to like $60 and get a better USB dongle DAC.

Thanks - glad to hear the zero 2 is ideal for this. I'll look into USB DACs instead, I assume basically anything will work?
Also; do you mind if I submit a PR to the FAQ to mention that the Zero 2 or better will work well?

@darthmorf please report back if a fresh installation is working for you (I had serious troubles with latest Bullseye RaspberryOS...) (see my issue opened here)

Also; do you mind if I submit a PR to the FAQ to mention that the Zero 2 or better will work well?

Raspotify will run fine on all Pi's except Pi 1's Pi Zero v1's and the 1st revision of the Pi 2. Basically any Pi that doesn't have an ARMv6 CPU. The install script checks to make sure the device is compatible. I don't think it's really needed?


Greenkeeper/ts jest 23.10.4

Coverage remained the same at 95.062% when pulling 1f3dfd6acffe80f871aff2b658b9511466c54c93 on greenkeeper/ts-jest-23.10.4 into b7ccaa0da87cfb393b27690d84ddf8a9c888b114 on master.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Windows zq: propery route - path to stdin

The current logic in zq was translating the stdin path arg '-' in a zq command
to /dev/stdin. While this works in unix environments this does not work for
windows. Instead translate '-' to the iosrc.Stdin representation
'stdio://stdin' so the path is properly routed to stdin in windows.
Closes #2000

Unfortunately since we don't have system tests running for windows, we can't really add a test for this.


When I tried to install it in kettle, it says invalid plugin id.

Is this still maintained? Thanks.

I contacted the author of the plugin to fix in the marketplace (dots in the plugin ID are not allowed).
Reported also over here: https://jira.pentaho.com/browse/PDI-18267
Other than that: We have a Splunk connector in EE version, https://help.pentaho.com/Documentation/8.3/Products/Splunk_Input
Will wait for the author's reply and then decide to eventually remove the plugin from the markeplace.


Editing observation note when on a network site changes map zoom level

From https://forum.inaturalist.org/t/unwanted-map-zoom-out-when-editing-observations/42815 I can replicate.

Open an observation that has a fairly zoomed in map view while logged into a network site, eg https://inaturalist.ca/observations/169619005

Edit observation and add or edit the note. Save changes.

Map is now zoomed out.

This doesn't happen logged into inaturalist.org and editing an observation's note.

This also happens on inaturalist.org.
I've just uploaded a number of observations where, for some reason, DarkTable was reading old EXIF data and exporting those locations rather than the ones on the photos. Only realised after I'd done a few observations.
Originally uploaded observations have lat/lon, but not accuracy and are shown like this one (which I'll avoid editing for a whttps://www.inaturalist.org/observations/176809799hile). This in itself is quite a broad canvas for the observation (which is probably why I didn't spot that they were misplaced), but better than zoom level 1 at a global scale.
This observation I zoomed out as far as I could and then saved. It has a similar viewport to the above example now. This, in contrast, is what an observation where the original co-ordinates are replaced manually looks like. If I carefully zoom in I can get it saved with a more sensible contextual view.
To replace the incorrect co-ordinates I'm editing each observation and choosing edit location. I'm copying and pasting co--ordinates from Geosetter, the program i used to assign co-ordinates in the first place. In most cases I'm also setting accuracy to 5 or 10 metres as well. When saved in this form they all default to the zoom level 1 view as shown with https://www.inaturalist.org/observations/176836045.
In general I'd prefer the initial default view on creating an observation to be 1 km across or less. Virtually all of my observations have co-ordinates from GPS and I observe over a smallish area too.

I believe this was an intentionally implemented feature. We can remove it though. Observations have an attribute map_scale and when you change the zoom of the map on the observations edit page, that value will be updated accordingly, and the map on the observation show page will then reflect the new zoom level. If we don't want the edit page to modify this value anymore, we can do that. It may still get set other places as it is an observation attribute that can be edited.
For the purposes of this ticket, I'll make it so changing the map zoom level on the observations edit page does not modify the observation attribute map_scale

I didn't find an easy comprehensive fix. The problem is the map auto-zooms to the site bounds on obs edit on a network site, but the map is set to update map_scale when the map moves, so that auto-zoom was updating map_scale. What I changed is I added a small delay to when map movement triggers an update to map_scale. Hopefully that leaves enough time for the auto-zoom to happen (and not touch map_scale), but then have manual map movement update map_scale like users are used to.
We might be able to apply a better fix if we get that page working with proper asynchronous Google Maps loading, and we can enable a callback immediately after the map zooms. In the mean time, please reopen if people are still experiencing this.


anyone else receive the following warning

Hey guys, I was wondering if there's anyone else receiving the following warnings. I've updated tf through pip and since then I get the following warnings:
Using TensorFlow backend.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.

Any idea what's going on? Prior to the update to the latest version never had this warning before.

This is a performance warning. For user convenience, our binaries do not have all the processor extensions so they work on older computers too. However, it is warning you that you do have those extensions available, and you can achieve better performance by building your own binary.

@aselle thanks for the clarification.


Ubuntu Zesty

Hello!
Would this tool compile in Ubuntu 17.04?
Does the distro 17.04 package still has this problems you mentioned in README.md, e.g. memory leak?
I am using the distro 17.04 package, untill now, I noticed it doesn't change the VGA display color temperature on my notebook. Don't know about those other issues.
Do you recommend xcalib or another tool for color inversion (black bg the screen)? I want to try the feature of these tools, I am having sleeping issues.
Have a great time

Hello,
This tool wasn't tested on Ubuntu 17.04 but it shouldn't be hard to make this tool run on any distribution that uses the X Windows System. This tools does not have the memory leak problem. In fact, this fork of the tool fixes the problems mentioned in README.md.
Hope that helps!

I'm glad you've responded.
I understand your fork/tool fix some issues. I should contact the maintainer<EMAIL_ADDRESS>

Hello,
How to view current sct status, the last value inputed? I've set a cron job which applies color temperatures in hourly steps. the highest value is at 12:00AM, so it decreases when moving away from this hour, both backwards and forwards. I want to check if is it working what I've done.

Hi @nbah07, you could write the input values to a file when the cron job runs. You may want to consider having cron call a shell script which computes the input values for sct, calls sct, and writes the input values to a file. Unfortunately, there is no way to query the status of sct since sct does not keep running in the background.

@maowm say> How to view current sct status, the last value inputed?
PR #5 (Read current temperature)

Closing this one, though @nbah07 please don't hesitate to reopen it if you have another related question.


Fix unsetting LDFLAGS, CHOST and use clang_osx-64

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Except for the fact that it doesn't build yet. :/

@conda-forge-admin, rerender


GeoLite - City updating error

Brief description of your issue

Select GeoLite City (Large).
Press update.
All downloaded fine but at the end there is Access Denied error (invalid license key).

But with the same credentials Country downloaded fine. And in %APPDATA% cache folder stays City .tar.gz file. Which passed tests by archivers.

Steps to reproduce (optional)
No response
Expected behavior (optional)
No response
Actual behavior (optional)
No response
Environment (optional)
SI 3.1.24208.0
Win 10 22h2 x64 10.0.19045.4651

https://status.maxmind.com/

Its not related to this incident. SI downloads GeoLite2-City_20240730.tar.gz to cache, and even unpacks GeoLite2-City.mmdb from it to cache folder too. But then it not move this file to main settings folder and shows Access Denied error.

But then it not move this file to main settings folder and shows Access Denied error.

Either the directory has invalid permissions or some other program is opening the file without delete permission. There's nothing we can do about either of these two cases as they're third party.

Either the directory has invalid permissions or some other program is opening the file without delete permission. There's nothing we can do about either of these two cases as they're third party.

No. When I switch to Country - all works fine.

https://status.maxmind.com/

24232, bug with City DB still here...


Matlab integration for Openscapes 2i2c Hub

Context
Hi - We are working with some of our NASA Champions who are starting with Matlab and trying to migrate to Python. We have been using AWS directly for this group, but it isn't easy to use and makes the distance for these users trying to learn Python even further. I know that Matlab isn't open. We are taking the approach of starting with where people are and helping them use the cloud from there.
Proposal
Would our hub allow this matlab integration?  When I try to do this, i get an error that I need node.js. Thanks so much for any guidance - Erin
Updates and actions
No response

Hi Erin! Thanks for your message. In the future, I suggest that messages like this be shared through 2i2c's support channel. That will likely generate a faster response.
Our engineering team discussed this request today. It is technically possible to deliver Matlab via JupyterHub. This repo from MathWorks provides some guidance. Based on our discussion, I suggest three paths forward for Openscapes:

Openscapes adds Matlab to the image that defines the resources available on Openscapes' JupyterHub.
2i2c assists Opescapes with adding Matlab to Openscapes' JupyterHub.
Consider GNU Octave?

While 2i2c champions open source software, there is no "open source purity" test that prevents us from delivering Matlab. Our strategy is to deploy JupyterHub, as specified in the partner's image, using cloud infrastructure consistent with the Right to Replicate. This strategy separates the image (what software is delivered to users) from the infrastructure (the way the software is delivered using cloud and JupyterHub).
The image is yours to specify! This leads to the first path above. For path 2, 2i2c can potentially provide assistance in constructing and deploying the image. Doing that work will require some scoping and will involve development costs. (Let us know if you'd like us to develop an work plan and cost estimate.)
On Path 3....Octave is "drop-in compatible with Matlab scripts" and there is an Octave kernel for Jupyter. The usage scenario for Matlab would enable users to launch into the Matlab GUI from the landing page after logging into the hub. The usage scenario for Octave would enable users to run Matlab-like code inside JupyterLab or Jupyter Notebook. The Octave-in-Jupyter path has the potential to bring users into the "Let's use Jupyter collaboratively because of open science, etc." vibe while allowing them to make first steps using "drop-in compatible" Matlab code.
I welcome discussion. If you wish to discuss synchronously, please reach out!

thanks so much for this response - I will use the support channel in the future. I think options 1 and 3 will work for us to start. I will share Octave with our developer too. If we need more help I'll circle back.

@erinmr I think this was done, right? Can you tell us what the eventual outcome here was?

Hi @yuvipanda - Thanks for checking in. This is working. We haven't done much experimentation with it because our group's interest hasn't been around Matlab analysis. My limited use was that it was a big improvement from needing to spin up a virtual machine every time I wanted to use Matlab on AWS. Thanks for helping us with this!

@erinmr yay, awesome! Glad it is useful :) I'm going to close this issue as done :)


I18n support

Hi @think-gem
Is jeesite support I18N?
I run it with tomcat but all string in Chinese character and i don't understand!
If not, how can i add I18N?

@ghaseminya,jeesite doesn't support i18n,there is a way to help you,you can use google translator to help you to understand the Chinese character.

4.0 will support


End-to-end download scipt

Can we create a docopt script which can call the download bot python scripts, merge scripts and final download script in one wrapped up file?
This may be a good exercise for @helingogo and I to do to familiarize ourselves with @Amirshoja's wizardry.

It should be possible but 3 points to take into consideration:

Chrome Driver has to be downloaded inside the script
options.add_argument("--headless") has to be uncommented in order for chrome to run the script without actually opening the browser.
Each file download takes approximately 15-20 seconds (time.sleep included). So downloading all the files could take over 5-6 hours.

It seems creating a script to automate the data collection process is out of the scope of the current project and it's runtime would take 5-6 hours. In a real-world scenario creating an end-to-end pipe to automate the data collection could be useful.


Python 3 compatibility

Just wondering whether Python 3 support / compatibility is planned, and if not if it could be implemented. I think this is usually very simple.
I usually work in a Python 3 environment and program in Python 3. Would be very nice to be able to use Martian with Python 3.

This is certainly on our radar, although we don't have immediate plans.  I have not had a chance to look at the extent to which the python adapter would need to be updated to support this, but I wouldn't expect it to be that major.

With Python 2 now having an official end-of-life date, the priority for this issue is increasing.  We'll try to get it in for the 3.2 release milestone - I can't think of anything higher priority.

Fixed with 5a8a16bb8a648e7b2d92cc32a9ba48fbc6600de2.


Code timing instrumentation

I think it would be nice to have a feature that when activated, will print out the timings for various sub-procedures. A nice standardised format for printing the name of the function and the line numbers could be nice.
When the feature is not activated, this code is not compiled.
The thing I find most annoying is uninstrumenting code, only to discover I want to look at some sub function timings, and I have to reinstrument the code...

Will be included in https://github.com/celo-org/zexe/pull/4 with the following interface:
    let now = timing!();
    dlsd_radixsort(bucket_positions, 8);
    timing_println!(now, "radixsort");

and following output:
--features "timing"
[ radixsort ] 2168us

--features "timing_detailed"
batch_bucketed_add in bucketed_add.rs 50:51 [ radixsort ] 11532us

Code uses macros:

#[macro_export]
macro_rules! timing_println {
    ($now: ident, $string: expr) => {
        #[cfg(feature = "timing")]
        {
            println!("[ {} ] {}us", $string, $now.1.elapsed().as_micros(),);
        }

        #[cfg(feature = "timing_detailed")]
        {
            macro_rules! function {
                () => {{
                    fn f() {}
                    fn type_name_of<T>(_: T) -> &'static str {
                        core::any::type_name::<T>()
                    }
                    let name = type_name_of(f);
                    &name[..name.len() - 3]
                }};
            }
            println!(
                "{} in {} {}:{} [ {} ] {}us",
                String::from(function!()).split("::").last().unwrap(),
                String::from(file!()).split("/").last().unwrap(),
                $now.0,
                line!() - 1,
                $string,
                $now.1.elapsed().as_micros(),
            );
        }
    };
}

#[macro_export]
macro_rules! timing {
    () => {{
        #[cfg(any(feature = "timing", feature = "timing_detailed"))]
        let now = (line!(), std::time::Instant::now());

        #[cfg(not(any(feature = "timing", feature = "timing_detailed")))]
        let now = ();
        now
    }};
}

The next step is to use proc macros to define which specific invocation of a function ought to compile with timing instrumentation using an attribute like
#[timing(on)]
batch_affine_add(..)

#[timing(off)]
batch_affine_add(..)

This already exists with the bench-utils  crate

Hmm I see. Thats cool. I will work on mine a bit and see if we can combine some features. One thing I can do is to identify the function in which the timer is called, so that one can blacklist functions from emiting log msgs

Longer term I plan to move to infrastructure based on tracing, which would allow similar blacklisting (and has many more features to boot!)

Hmm looks really interesting, looking forward to using tracing!


Make all modules optional and separate them out in the codebase

TL;DR: It should be possible to specify exactly what features you want using cargo, and it should "just work."
Currently there is some intermingling between features2d and xfeatures2d. OpenCV also has several other modules and some have dependencies on each other. This depends on the completion of the sys crate refactor #115. The sys crate will only build the parts of OpenCV requested. This should result in being able to include just the components needed to avoid having to pay royalties to patent encumbered things in opencv_contrib.

Moving all contrib features behind contrib feature would be sufficient.

It just make no sense to me. Having 100+ features doesn't make crate easier to use but the opposite. Having minimal amount of switches that covers all cases is the best. Think of it as of Karnaugh map.

Whats the status of this? I just compiled opencv3 from sources and ocr.hpp doesnt seem to exist? I also cant find it in the source repo. This might help these kind of issues

@geoeo It seems @Pzixel might not be interested in accepting changes to enable only specific modules. However if you are interested in messing around with cv-rs where it builds OpenCV for you, you can use my #117 branch. Just point your git line to my repo and set `rev = "refactor". You can also use the system feature to cause it to use the system packages like the current master does. It requires clang to be installed as well though.
Are you interested in making each OpenCV module optional? If you could provide some feedback, it might help determine what happens with this issue.

The core issue is different. Its that it seems that the ocr.hpp file has been removed from the core opencv repo. This would have helped to mitigate the failed compilation. But im not 100% sure.

@geoeo Make sure you compile the opencv submodule in this repository. It points to the right build of OpenCV.

I thought I only have to do $cargo build
What else do I have to do?

I cant get this folder to compile. I have to install 100 dependencies which are not relevant. I would +1 this if that means anything.

@geoeo After I merge the #117 branch, you wont really need any dependencies installed on Linux (except GTK3) or Windows. You can try it out now if you want, but I am still dealing with issues on Ubuntu 16.04 on Travis (so it passes CI).

There's a typo in build.rs line 102
let cargo_rustc_link_search = env::var("OPENCV_LIB").unwrap_or("/use/local/lib".into());
I think it should be
let cargo_rustc_link_search = env::var("OPENCV_LIB").unwrap_or("/usr/local/lib".into());
Didnt want to make a PR for this.

Fixed


Upgraded to BETA version 0.0.2

Upgraded to BETA version 0.0.2 with a fully implemented pixel calculator and the new automation sequence config format.

Merged.


Missing dependency: click_datetime

~ % peerplays --help
Traceback (most recent call last):
  File "/home/tom/anaconda3/bin/peerplays", line 7, in <module>
    from peerplays.cli.cli import main
  File "/home/tom/anaconda3/lib/python3.6/site-packages/peerplays/cli/cli.py", line 38, in <module>
    from click_datetime import Datetime
ModuleNotFoundError: No module named 'click_datetime'
~ % pip install click_datetime
Collecting click_datetime
  Downloading click_datetime-0.2-py2.py3-none-any.whl
Requirement already satisfied: click in ./anaconda3/lib/python3.6/site-packages (from click_datetime)
Installing collected packages: click-datetime
Successfully installed click-datetime-0.2

Thanks .. fixed


[libspatialindex] Update to 1.9.3

update libspatialindex to 1.9.3

Failed on x64-windows-static and x64-windows-static-md:
DLLs should not be present in a static build, but the following DLLs were found:

    D:/packages/libspatialindex_x64-windows-static/bin/spatialindex-64.dll
    D:/packages/libspatialindex_x64-windows-static/bin/spatialindex_c-64.dll
    D:/packages/libspatialindex_x64-windows-static/debug/bin/spatialindex-64.dll
    D:/packages/libspatialindex_x64-windows-static/debug/bin/spatialindex_c-64.dll

There should be no bin\ directory in a static build, but D:\packages\libspatialindex_x64-windows-static\bin is present.
There should be no debug\bin\ directory in a static build, but D:\packages\libspatialindex_x64-windows-static\debug\bin is present.
If the creation of bin\ and/or debug\bin\ cannot be disabled, use this in the portfile to remove them

    if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
        file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
    endif()

Found 2 error(s). Please correct the portfile:

@longhuan2018 I created a PR upstream in anticipation of an easier upgrade path in the future

LGTM, thanks @longhuan2018 :)


New tool: sync:keywords - synchronize composer.json keywords with github topics

$ zf-maintainer sync:keywords <github-token> -o|--org=<org> -r|--repo=<repo-pattern> [--dry-run]

Replaces all github topics with keywords from composer.json file (master branch) for repositories matching provided pattern <repo-pattern> in provided organization <org>.
<repo-pattern> can be alphanumeric string with dashes and * to match any part of the repository name.
Here we have --dry-run result for following command:
$ bin/zf-maintainer sync:keywords <TOKEN> --org=zendframework --repo=zend-expressive* --dry-run

On red we have marked topics to remove, cyan - keywords to add.
In case we don't have any keywords in the composer.json there is an error message next to the repository name. Repositories are sorted by name, asc.
Resolves #35
/cc @Xerkus @froschdesign

I'd like to see one and/or both of the following changes:

some verbiage in the help text indicating that a dry run SHOULD be run to determine if the repo keywords contain keywords not in the composer.json;
or have it error if the repo HAS keywords, and one or more are NOT in the composer.json.

The reason is that there are a number or github keywords that are useful, but we may not be using in composer.json files yet.

@weierophinney it's updated now:  2ba5727


BG number is red even though it's in-range

In Nightscout I configured my range to be 4-8 mmol/L. However, the plugin reports a BG of 4.3 as low.

this is likely due to the fact that it doesn't currently pull nightscout alarm values, but since I recently added the pulling of MMOL/MGDL from the nightscout profile this should be pretty easy to implement. A temporary solution would be to manually set the alarm values in the settings page.
I will update when I make progress on this.

Closed because of similarity to https://github.com/leogandmars/nightscout-chrome/issues/2
Please see that issue for updates


Question: typical execution time time for motion correction?

Hi @jeffmacinnes
Thanks for your great work on pyneal and for making it open source. Working in real-time fMRI methods and having recently started moving over to Python, this has helped me a lot.
A colleague and I are now implementing a real-time fMRI processing and visualisation tool in Python and have used your realignment algorithm, but we’re experiencing challenges with the execution time of realignment for a single volume. The first test took almost 1000 ms to run for what should be a straightforward realignment procedure (no excessive motion) on standard data (NIfTI volumes, in plane matrix size 64x64, isotropic 3mm voxels). This was on a laptop with adequate processing power. Comparably, my existing Matlab code using SPM12 realignment (based on the OpenNFT implementation) could do the same step in less than 200ms.
Specifically the reg.optimize() line in the estimateMotion() function takes the longest to execute. We have tried different optimizers and the cg option seems to give the best results (about 300ms for that line to run), but we're unsure what implications this might have for the realignment procedure.
Did you go through similar challenges when testing pyneal functionality? What execution time do you typically get for the pyneal motion correction step? Do you have suggestions for what we could look into in order to improve our performance?

Hi @jsheunis --
That estimation time seems a bit high, but in the ballpark of what I've experienced as well. For comparison, it typically takes ~500-750ms per vol with 64x64x18 volume.
As you probably noticed in the code, the motion estimation uses HistogramRegistration from the Nipy library. I haven't spent much time trying to optimize it, but would love to hear if you make any progress on that front.
Cheers!

Thanks for the response!
Us neither, but will be looking into it over the coming weeks and I'll keep you updated.

Hi Jeff. I wrote up some code to test different optimization options for the optimize method of HistogramRegistration. I encountered some challenges and asked about it on NeuroStars, if you're interested.


Move VmdbDatabaseConnection specific code out of MiqDbConfig.

This code doesn't make any sense in MiqDbConfig as it uses none of its functionality...it just gets in the way of refactorting MiqDbConfig.
@jrafanie Please review.

:+1:

LGTM

merging when Travis is green

My new word of the day: "refactorting"
:stuck_out_tongue_closed_eyes:


chore: bdd-nh-1590760635 to 0.0.1

chore: Promote bdd-nh-1590760635 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


UI Mockups for Menus/HUD

Currently working on UI Mockups/Sketch Layouts.
Looking for a main menu layout that is flexible enough to extend + giving a great overview.
I wanted to open up an issue on https://github.com/inexor-game/ui-prototype, where this issue might fit. They are only open for PRs though.
Main Menu
Steam Like (Library)

Comparable to Steam

I guess it is better if you are creating a PR in the UI prototype repo instead posting them all in an issue.

I'm collecting UI Sketches/Mockups. I'm not sure if merging images would be a good idea for the UI prototype repo. Thoughts?

I love the drafted UI Mockup. Have you had the chance to add something to the UI repo? Can you test that with CEF? I'd bet i'd make a pretty awesome screen shot embedded in CEF

thanks @Fohlen. As already explained, the https://github.com/inexor-game/ui-prototype does not support Issues. I'd open the discussion there then if I could. So this issue should be the base of a discussion on what to improve and do other proposals, before coding/implementing them :)

@MartinMuzatko We have decided to only have one issue tracker for everything.

We already have an issue for a better hud: #98

I'll move it there then, thank you :)


X4 Charges

About the PR
Adds X4 Charges, stronger C4 designed to destroy structures. It's my first time working with explosion code, so please tell me if this is unbalanced so there isn't another macrobomb incident.
Changelog

:cl:

add: X4, a modified version of C4 specialized for structural damage, is now available in uplinks.

I dont really get the niche this is filling. C4 already specializes in structure damage. This is just C4 but stronger, which isn't super interesting.

Webedit.

:(