NO-JIRA: e2e: followup cleanup for OpenStack Manila

What this PR does / why we need it:
Follow-up cleanup.

/assign mandre

/retest-required

/approve


Show cardinalities in execution plan

In the current version, cardinalities (sizes of intermediary results) are only shown when hovering the mouse over a specific node. To get a better overview of the sizes of the intermediary results, I'd rather display the cardinality of any given node within the node (e.g., below the operator in smaller font).

Introduced result count with eb8a66751a97701a1514813cc2cc034cba60d371
.
Please reopen if solution does not meet expectations.


D3 and D4 empirical dispersion corrections

I could not get the install of the dftd3 extension to work (MacOS). My suggestion would be to link to the new dftd4 package which is installable by conda. There is also a Python interface that makes calculation of dispersion energies trivial. This is also installable via conda. I know that @awvwgk also has plans to make his D3 calculator available via this route as well.

Working on native support for PySCF in https://github.com/awvwgk/simple-dftd3/pull/17 now. The dftd3.pyscf module should be a drop-in replacement for pyscf.dftd3.itrf.

The pyscf interfaces provided by dftd3 https://dftd3.readthedocs.io/en/latest/api/pyscf.html and dftd4 https://dftd4.readthedocs.io/en/latest/reference/pyscf.html are the recommended way to add dispersion corrections.


Announcement model requires more fields than the API does.

The model for Announcement as defined at https://github.com/brianhealey/pyamplipi/blob/main/pyamplipi/models.py#L168
requires fields media, vol_f and source_id
while the API documentation at http://api.amplipi.com/#tag--announce only requires the media field and applies sensible defaults for the others
I can provide a PR
However - am a bit confused on the vol_f: float  versus vol: int usage?
The API documentation does only mention the vol: int variant (as well as a vol_delta: int on zones)  Its semantics and use are not quite clear to me.

It looks like we need a little better documentation for this. In the meantime let me try to clarify:
vol_f is a [0.0, 1.0] factor that applies the volume to each zone based on its min and max volume.
vol is [-79, 0] in decibels and is overrides about each zone's min and max volume.
In almost all use cases vol_f is better, it was just added later to the API once we figured out how to add a min and max volume config to each zone.
vol is potentially useful in an emergency situation where you want to blare the volume no matter what the setting is.
For more details check out:

@linknum23 sorry for this follow up - just want to make sure I understand
This is what I understand: both vol and vol_f are functionally aiming the same, ie they are alternatives to set the volume to be applied.

the argument vol takes an integer in db to set the volume ignoring any min-max settings (per zone?)
the vol_f takes a float between 0 and 1 to interpolate the volume-value between min and max (I assume with something like vol = min + vol_f * (max - min)

I am assuming these statements are about the REST API model; so both could be sent down to the server in the body, right?
What is confusing / not clear however:

What happens if I sent both? vol_f gets ignored and the vol takes precedence?
Where do I find / modify these min-max (zone) settings? I find no reference to them in http://api.amplipi.com/#tag--zone nor http://api.amplipi.com/#post-/api/load  Or are they hard-coded in some way?
Where can I submit any PR for the API documentation website?  If this is part of https://github.com/micro-nova/AmpliPi then maybe hint me to the correct parts? Is there some swagger/openapi being generated?

Finally:

It would be grand if you could also confirm the main claim of this topic: namely that only the media field is required (as I have experienced through curl testing) and that thus the Announcement model in this project should adopt itself?

What happens if I sent both? vol_f gets ignored and the vol takes precedence?

Exactly!

Where do I find / modify these min-max (zone) settings? I find no reference to them in http://api.amplipi.com/#tag--zone nor http://api.amplipi.com/#post-/api/load Or are they hard-coded in some way?

We forgot to update this manually for the 0.1.8 release. Its a bit of a manual process to update all of the examples and needs some automation. You should find this documentation to be up to date on your amplipi device at http://amplipi.local/doc. It is generated at runtime from the contents of two files: amplipi/app.py and amplipi/models.py. Some of the example responses are probably out of date.

Where can I submit any PR for the API documentation website? If this is part of https://github.com/micro-nova/AmpliPi then maybe hint me to the correct parts? Is there some swagger/openapi being generated?

It is part of the main AmpliPi repo, specifically this file: https://github.com/micro-nova/AmpliPi/blob/main/docs/amplipi_api.yaml

t would be grand if you could also confirm the main claim of this topic: namely that only the media field is required (as I have experienced through curl testing) and that thus the Announcement model in this project should adopt itself?

Yup you only need  to specify the media field!


Final indicators update

VED_vessel_density BIPS_boats_in_ports CV19_covid_19_indicators OCVA_ocean_variables WAQ_water_quality

@lubojr and @santilland I'm finishing to check the aggregated indicators. I think there are one or two more, but I will write here once is done

@santilland @lubojr I think it's done. This branch can be merged from my side.
Can you create a new dashboard visualisation with all the integrations I have uploaded? I want to check if I forgot any indicators outside the grouping

@FedericoRondoni We have now created a whole RACE deployment (all indicators/collections in RACE.yaml) by editting the description of this PR and creating a new commit with miscellaneous changes.
You can see the testing deployment on https://eodash-testing.eox.at/ui-panels-cat/?catalog=final-indicators-update (the catalog URL query part is the name of this branch)

Ok, I think we can merge everything!
Thanks @lubojr and @santilland


Get target file for coverage (and other case sample workflow steps) from the PoN

We could save some time on coverage collection by using a target file generated from the PoN.
Currently, the same target file for the PoN must be used for the case sample.  This has caused issues:

out of sync.  The user uses a different target file for the case samples than for the PoN
calculating coverage for targets that will not be used.  Many targets are filtered out in the PoN.  Why calculate the coverage for these?

No longer necessary with the new coverage model.


change to libcmrt.pc from cmrt.pc since the .so name changed

intel_hybrid_driver fails to build with this pull request, and complains that:
configure: error: Package requirements (cmrt >= 0.10.0) were not met:
No package 'cmrt' found
This happens as cmrt is now moved to libcmrt and thus dependency chain is broken for intel_hybrid_driver.

yes, someone else need to change intel_hybrid_driver  accordingly since i have no access on it.
actually, once the .so name is changed from cmrt.so to libcmrt.so, intel_hybrid_driver should have changed the link option from "-l:cmrt" to "-lcmrt", i guess.
to match the change of .so name, we'd better change the .pc name accordingly, and also change all the cmrt applications.

Since the change will need to propagate to other library, is there other reason than  the name change to be made? I think we can stay with the current name

it is the 'standard' usage with file libname.pc, i guess. The sooner we changed to it, the less is impacted.
If we decide to never change the file name later, i'll send another patch to only change the content of the file.

2015-10-13 2:43 GMT+02:00 guoyejun<EMAIL_ADDRESS>
yes, someone else need to change intel_hybrid_driver accordingly since i
have no access on it.
actually, once the .so name is changed from cmrt.so to libcmrt.so,
intel_hybrid_driver should have changed the link option from "-l:cmrt" to
"-lcmrt", i guess.
to match the change of .so name, we'd better change the .pc name
accordingly, and also change all the cmrt applications.
—
Reply to this email directly or view it on GitHub
https://github.com/01org/cmrt/pull/24#issuecomment-147559113.

The correct changes are indeed:

Let the DSO name be libcmrt.so.*, with the symlink being plain libcmrt.so
;
Change intel_hybrid_driver link option from "-l:cmrt" to -lcmrt ;
Have a pkg-config file called libcmrt.pc
--
Gwenole Beauchesne
Intel Corporation SAS / 2 rue de Paris, 92196 Meudon Cedex, France
Registration Number (RCS): Nanterre B 302 456 199

Beauchesne, my patch is exactly the same as your idea at CMRT side.

2015-10-13 10:29 GMT+02:00 guoyejun<EMAIL_ADDRESS>
Beauchesne, my patch is exactly the same as your idea at CMRT side.

This is why I said this is "indeed what needs to be done". +1 if you
prefer. :)

Yes I understand this is the standard and most libraries comply to it. To fix the problem, as you said, the users of the library have to be notified for them to fix accordingly.
Knowing it is a mistake I also want to consider if leaving it alone would minimize the impact.
Until that happen I would prefer not to merge this patch

@gbeauchesne,
Yes, this is on my list to do with the switch to libcmrt.  I'm glad Yejun submitted it.  I am entirely in agreement. I will also update the driver.  I also appreciate @chivakker 's concern.  However, hybrid use of CMRT requires a release tag which we use with Google's ebuild and we use with DPD's install script.  So all is cool.
lgtm +2


Add missing rename attribute to LinuxSyscall (fixes clone3 problems)

LinuxSyscall was missing this rename attribute, so the errnoRet field was not being handled properly.
This might have gone unnoticed as the default moby seccomp profile has only one non-default errnoRet value for clone3, but unfortunately it causes a lot of issues when it's missing (https://github.com/moby/moby/pull/42681, https://stackoverflow.com/questions/71941032/why-i-cannot-run-apt-update-inside-a-fresh-ubuntu22-04)

@Furisto @utam0k PTAL

Codecov Report

Merging #125 (1595d7a) into main (65ad456) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #125   +/-   ##
=======================================
  Coverage   23.98%   23.98%
=======================================
  Files          21       21
  Lines        1622     1622
  Branches      809      809
=======================================
  Hits          389      389
  Misses        541      541
  Partials      692      692


Migrate to Github Actions

This change migrates to Github Actions instead of using Travis CI

We are moving from Go 1.14 to 1.17 in the pipeline here, but that might be just fine 👍

Damn. That is some bump. Let's try it. It succeeded


[Bug] 是不是自动生辰标题都不起作用了？

Describe the bug
至少v2.9.12没有自动生成标题
To Reproduce
Steps to reproduce the behavior:

就说话
Expected behavior
生成标题.

Screenshots
If applicable, add screenshots to help explain your problem.
Deployment

[ *] Docker
[ ] Vercel
[ ] Server

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [pixel5]
OS: [android14]
Browser [chrome]
Version [2.9.12]

Additional Logs
Add any logs about the problem here.

Describe the bug 至少v2.9.12没有自动生成标题
To Reproduce Steps to reproduce the behavior:

就说话
Expected behavior
生成标题.

Screenshots If applicable, add screenshots to help explain your problem.
Deployment

[ *] Docker
[ ]  Vercel
[ ]  Server

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [pixel5]
OS: [android14]
Browser [chrome]
Version [2.9.12]

Additional Logs Add any logs about the problem here.

you mean this ? make sure its enabled, and its enabled by default

Describe the bug 至少v2.9.12没有自动生成标题
To Reproduce Steps to reproduce the behavior:

就说话
Expected behavior
生成标题.

Screenshots If applicable, add screenshots to help explain your problem.
Deployment

[ *] Docker
[ ]    Vercel
[ ]    Server

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [pixel5]
OS: [android14]
Browser [chrome]
Version [2.9.12]

Additional Logs Add any logs about the problem here.

you mean this ? make sure its enabled, and its enabled by default

这个我开了，现在我认为应该是one-api的问题，因为我换成openai的地址和key是可以的

you may need to put stream: true, in chat.ts
in this one
          api.llm.chat({
            messages: topicMessages,
            config: {
              model: getSummarizeModel(session.mask.modelConfig.model),
            },

by replacing like this
          api.llm.chat({
            messages: topicMessages,
            config: {
              model: getSummarizeModel(session.mask.modelConfig.model),
              stream: true,
            },

Link: https://github.com/Yidadaa/ChatGPT-Next-Web/blob/b21931c667abf2825eca43d59f794471420c1db0/app/store/chat.ts#L493C1-L497C15

[!NOTE]
by replacing putting that stream as true, it made response as text-stream in openai/azure


copying decklists from JOL requires manual intervention to parse the cards

STEPS

Given I have a JOL deck
When I Copy the deck to clipboard (sample below)
And I Select 'Import from Text' in VDB
And I Paste my JOL format into the text window
Then I Expect to be able to import without manually trimming a space from each card

ACTUAL:
The deck does not parse the extra space that JOL has, and i must remove all spaces:
This fails:
4 x Handsome Dan
1 x Laura Goldman
4 x Alabástrom
2 x Malachai
3 x Anarch Convert

This works:
4x Handsome Dan
1x Laura Goldman
4x Alabástrom
2x Malachai
3x Anarch Convert

Library list follows the same convention Q-ty x Card Name?

Lib and crypt experience the same behaviour

Fixed in fe3feb8e05157329c2fc88125ab9dda17f14c407 (will be deployed in the next update).


Disable the StableLable Table

Yes, this is a shock to the system to even think about.
However, the only rationale for having this table is to make sure that human annotations created in the Viewer are saved in some format that references stable_ids.  However, as we transition away from using the Viewer for labeling and move to BRAT / loading in external annotations, we shouldn't need this anymore.
Getting rid of this table will not only simplify code a lot but will also get rid of a massive slowdown in loading external annotations

@stephenbach should we close this (and #545)?

Yes.


Support Parsing "Sheet Music" into Channels

👋  こんにちわ!
It would be neat if SoundMaker could parse some "sheet music" format and turn them into wave files.
There's a site called noobnotes that seems to have a user-friendly format. (https://noobnotes.net/super-mario-bros-theme-nintendo/?solfege=false)
Here's a potential use case.
SoundFormat format = new(FourtyEightKHz, SixteenBit, Monaural);
var rightChannel = new TriangleSoundChannel(100, format, PanType.Right);
var music =
"""
^E ^E ^E
^C ^E ^G G

^C G E
A B Bb A
G ^E ^G ^A
^F ^G ^E ^C ^D B
""";

rightChannel.Process(music);

ありがとうございました。

Thank you for your proposal. I would be happy to do that.
This format is a prototype that was based on your sample.
// Can write comments.
// No distinction between upper and lower case letters. (ex. C4 = c4, rest = Rest)
C4, 4; // or c4
D4#, 2;
E4, 8;
rest, 8;
// ↓Tuplet
{ C4, D4, E4 }, 4; // This is the triplet.
// ↓Tie
C4, { 4, 4, 8 };
rest, 8;
// ↓Tuplet + Tie
{ C4*2, D4 }, 4;  // This is the triplet.
// Tuplet + Tuplet
{ { C4, C4, C4 }, C4, C4 }, 4; // This is the triplet.
// ↓dotted
.C4, 4
rest, 8

The sheet music is shown bellow.

However, there is a problem with it that can be inconvenient because it must be written length of note/rest.
Also, Currently, it is not possible to use dotted notes within a tuplet.( Tuplet class has this problem. )


Bicolor scheme on SNB list page ?

Can we have odd and even row displayed in different color ?
When you have seevral notebook, it is complicated to press the right button (right of the screen) corresponding to a specific notebook (left of the screen).
An other option (eventually prefered) would be to move the button on the left of the notebook name column.

Loic,

I prefer to move the button on the left of the notebook name column..
we'll see what's easier.

Fixed in #840

See also #841 as a possible (additional) option


Remove Class syntax from esm

To fix #268, removed typescript option from pacco.json.

I don't think this is the right thing to do, as esm environments should support this syntax, so there's no reason for transpiling it back to es5. If you need that I think you should configure webpack to do so.

Closing this PR via https://github.com/kenwheeler/cash/issues/268#issuecomment-477644234. Thanks.


highlight-indentation-mode and subtext1

The color subtext1 is quite dark compared to the background in the latte flavor (or quite light for other flavors) which is probably fine for most uses of that color, but it is also used for highlight-indentation-face and that is causing distracting vertical bars in highlight-indentation-mode:

This is how it looks with the default theme:

If you set line 533 to
(highlight-indentation-face :background ,ctp-overlay0)
``` does it look any better? (I'm unable to test it myself rn, soz)

Somewhat, but it is still quite distracting.  From the list of named colors, only mantle and crust are good (even though they are darker than base in the dark variants, but that does not matter much), surface0 is acceptable.

Which do you prefer Mantle or crust?

I think I prefer mantle - it is closer to base but still easily discernible.

👍  committing now


typo: Double word "articles"

@nschonni : Thanks for your contribution! The author, @msmimart, has been notified to review your proposed change.

@msmimart anything to change for this?

Thanks for the catch! Signing off on the change.

#sign-off


evaluate topic model

I'm curious whether there is any available tools here to calculate the perplexity or likelihood of a topic model. As the perplexity calculator in the Topic Model Toolkit provided by Stanford NLP group, it is really helpful to select an appropriate count of topics. Is there any similar tools here?

@hennande Hi, the current release doesn't have such tools.


TikTok error: Unable to find video in feed - the JSON object must be str, bytes or bytearray, not NoneType

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that yt-dlp is broken on a supported site
[X] I've verified that I have updated yt-dlp to nightly or master (update instructions)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[ ] I've read about sharing account credentials and I'm willing to share it if required

Region
Spain
Provide a description that is worded well enough to be understood
I have programmed a small script to download TikTok videos from a user-created collection. This collection has 20 videos, of which 19 have been downloaded, giving me error only one.
The URL is accessible and the video can be downloaded from the browser, but not from the script.
My version is:
yt-dlp -U
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp)
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
yt-dlp -o<PHONE_NUMBER>379307803.mp4 -P "C:/Users/delgadop/Documents/Formacion/python/tiktok_bot/VIDEOS/" https://www.tiktok.com/@movistarplus/video/7261360391379307803 -vU
[debug] Command-line config: ['-o', '7261360391379307803.mp4', '-P', 'C:/Users/delgadop/Documents/ITALTEL/Formacion/python/tiktok_bot/VIDEOS/', 'https://www.tiktok.com/@movistarplus/video/7261360391379307803', '-vU']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out cp1252 (No VT), error cp1252 (No VT), screen cp1252 (No VT)
[debug] yt-dlp version<EMAIL_ADDRESS>from yt-dlp/yt-dlp [f10589e34] (pip)
[debug] Python 3.11.4 (CPython AMD64 64bit) - Windows-10-10.0.22621-SP0 (OpenSSL 1.1.1u  30 May 2023)
[debug] exe versions: none
[debug] Optional libraries: Cryptodome-3.18.0, brotli-1.0.9, certifi-2023.07.22, mutagen-1.46.0, requests-2.31.0, sqlite3-3.42.0, urllib3-2.0.4, websockets-12.0
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets
[debug] Loaded 1798 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp)
[TikTok] Extracting URL: https://www.tiktok.com/@movistarplus/video/7261360391379307803
[TikTok]<PHONE_NUMBER>379307803: Downloading video feed
WARNING: [TikTok]<PHONE_NUMBER>379307803: Unable to find video in feed; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U; trying with webpage
[TikTok]<PHONE_NUMBER>379307803: Downloading webpage
ERROR: [TikTok]<PHONE_NUMBER>379307803: Unable to extract sigi state; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
  File "C:\Users\delgadop\AppData\Local\Programs\Python\Python311\Lib\site-packages\yt_dlp\extractor\common.py", line 718, in extract
    ie_result = self._real_extract(url)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\delgadop\AppData\Local\Programs\Python\Python311\Lib\site-packages\yt_dlp\extractor\tiktok.py", line 700, in _real_extract
    sigi_data = self._get_sigi_state(webpage, video_id)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\delgadop\AppData\Local\Programs\Python\Python311\Lib\site-packages\yt_dlp\extractor\tiktok.py", line 52, in _get_sigi_state
    return self._search_json(
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\delgadop\AppData\Local\Programs\Python\Python311\Lib\site-packages\yt_dlp\extractor\common.py", line 1280, in _search_json
    json_string = self._search_regex(
                  ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\delgadop\AppData\Local\Programs\Python\Python311\Lib\site-packages\yt_dlp\extractor\common.py", line 1266, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)

The video is not available from the mobile feed API; either it is flagged as sensitive, the audio has been taken down, or it is otherwise de-listed/shadowbanned - this results in the Unable to find video in feed warning and the fallback to webpage extraction. This is a known issue:

#8678
#6483
#4992

TT is now blocking yt-dlp from accessing any of their webpages, sending us captcha challenge pages w/o any video data instead. This is the cause of the Unable to extract sigi state error. This is being tracked by:

#8620

The JSON error output in your title is not found anywhere in your log?

Closing as duplicate of #8620 and/or #8678


Dapr Actors Overview Document needs diagrams of physical architecture

The document https://docs.dapr.io/developing-applications/building-blocks/actors/actors-overview/ needs to have a diagram of the physical architecture of actors and their host service and their clients.  The current diagrams of focused on the logical relationships of actors to the Placement Service are valuable, but BEFORE this section there needs to be diagrams of the physical relationships of actors to other entities in the system.
Fortunately such diagrams already exist in the "Actors" chapter of the eBook "Dapr for .NET Developers" in this section https://learn.microsoft.com/en-us/dotnet/architecture/dapr-for-net-developers/actors#how-it-works.  Here is the specific diagram that should be in Dapr's Actors Overview:

The above diagram makes it clear how actors physically fit into their host service and the Dapr Sidecar.  There are also a couple other diagrams in the text around the one above that show the relationship to the Placement Service and also the kinds of information exchanged between an host service and its side car.  Please consider also putting this diagram in Dapr Actors Overview.
Thanks

Thank you!  The new diagram really looks nice and helps people understand what is going on with actors!


Organize types and schemas

[ ] change amount from string to bigint #204
[ ] change connected address to bigint
[ ] change transaction hash to bigint

split to separate issues and PRs


corrupted top size

this is a bit hard to reproduce, since it somehow only happens inside vscode REPL, when you execute the following code twice
function broutine2x2!(S::AbstractMatrix, U::AbstractMatrix, loc::Int)
    step_1 = 1 << (loc - 1)
    step_2 = 1 << loc
    U11 = U[1, 1]; U12 = U[1, 2];
    U21 = U[2, 1]; U22 = U[2, 2];

    if step_1 == 1
        @batch for j in 0:step_2:size(S, 2)-step_1
            for b in 1:size(S, 1)
                ST1 = U11 * S[b, j+1] + U12 * S[b, j+step_1+1]
                ST2 = U21 * S[b, j+1] + U22 * S[b, j+step_1+1]

                S[b, j+1] = ST1
                S[b, j+step_1+1] = ST2
            end
        end
        return S
    end
end

N = 10
S = rand(ComplexF64, 100, 1 << N)
U = rand(ComplexF64, 2, 2)
S1 = broutine2x2!(copy(S), U, 1)

you will get for the second time inside vscode REPL
julia> S1 = broutine2x2!(copy(S), U, 1)
malloc(): corrupted top size

signal (6): Aborted
in expression starting at /home/roger/code/julia/BQCESubroutine/test/broutine2.jl:74

and it has to be inside vscode REPL somehow, in a normal Julia REPL it works fine. My versioninfo
julia> versioninfo()
Julia Version 1.6.0
Commit f9720dc2eb (2021-03-24 12:55 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: AMD Ryzen 9 3900X 12-Core Processor
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-11.0.1 (ORCJIT, znver2)

It seems fine without the @batch macro however

I got this with a regular Julia REPL:
julia> S1 = broutine2x2!(copy(S), U, 1)

signal (11): Segmentation fault
in expression starting at none:0
_ZNK4llvm12MachineInstr13isIdenticalToERKS0_NS0_11MICheckTypeE at /home/chriselrod/Documents/languages/julia/usr/bin/../lib/libLLVM-11jl.so (unknown line)
Allocations: 14450046 (Pool: 14445606; Big: 4440); GC: 18


RSS parser not parsing properly expansion.com

I am trying to add Expansion.com frontpage xml rss feed  into my Miniflux (v2.0.22), however, it seems like the parser doesnt detect the proper titles for articles, and instead parses the categories. See screenshot below:

I think this might be due to malformed xml feed. Im not sure though, I was wondering, is there any way to specify the xml parsing rules similarly to the scrape/rewrite rules? So i could say something like channel.item.title?

This commit should solve this issue: https://github.com/miniflux/miniflux/commit/1d6b0491a75687553fa9c37b68cd5f71aa6fee6e

will check, thanks!


[WIP][Feature] Add support of SMAC environment

THIS IS DRAFT COMMIT TO TEST CI AND DISCUSS.
Description
Added support of SMAC (StarCraft Multi-Agent Challenge) environment.
Includes CI and documentation.
New tensor specs came from #56.
Motivation and Context
SMAC is a popular library for research in field of multi-agent reinforcement learning (MARL). Its support was proposed by @vmoens in #509.

[ ] I have raised an issue to propose this change (required for new features and bug fixes)

Types of changes
What types of changes does your code introduce? Remove all that do not apply:

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds core functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation (update in the documentation)
[ ] Example (update in the folder of examples)

Checklist
Go over all the following points, and put an x in all the boxes that apply.
If you are unsure about any of these, don't hesitate to ask. We are here to help!

[x] I have read the CONTRIBUTION guide (required)
[x] My change requires a change to the documentation.
[x] I have updated the tests accordingly (required for a bug fix or a new feature).
[x] I have updated the documentation accordingly.

cc @matteobettini @PaLeroy
This may be of interest

This is cool!
I am interested in the choice of not adding the agent dimension in the batch_size. Is there a reason for this?

This is cool!
I am interested in the choice of not adding the agent dimension in the batch_size. Is there a reason for this?

That was actually the reason I was pinging you on this. @ordinskiy It would be nice if the batch_size matched the number of agents no?

Thank you for the feedback @matteobettini @vmoens!
I will set default batch_size of the environment to the number of agents on a given map.

Nice work!
A nice step towards MARL integration. 🎉

I'm going to refactor this using MultiOneHotDiscreteTensorSpec from #829 which, as I understand, is the result of #766 discussion.
Meanwhile, SMACv2 (https://github.com/oxwhirl/smacv2) released recently. I wonder if it makes sense to support both v1 and v2 or go with v2 from the start. From integration perspective v2 looks the same, except state and observation specs and CI (different package and maps), and it is not backwards compatible with old SMAC maps (at least for now). @vmoens what do you think?


Updating/fixing grammatical errors at spanish translations

Updating/fixing grammatical errors at spanish translations.

Thanks for your help @roadev.
Ping @jesusangelm, @erickgnavar, @milmazz for review :grinning:

Looks good 😃
Thanks @roadev

Thanks @erickgnavar

:)
You're welcome!


Improve and fix issues in the Ballerina bindings generator tool

Purpose
Provides the following improvements and fixes to the Ballerina bindings generator tool for Java APIs.
Improvements:

Add a new array util function for retrieving a handle from a Ballerina object array which is representing a Java object array.
Create empty dependency Ballerina objects to represent failed class generations.
Remove the implementation generation of dependent Ballerina objects. This would prevent the chain generation of dependent Ballerina objects. If a user requires the implementation of one of these classes, it should be explicitly generated using the command.
Automatically update the existing constants file when re-running the command.
Delete the respective empty dependencies if any, when a class is newly generated by re-running the command.

Fixed Issues:

Fixes the incorrect mapping of Java object arrays into Ballerina object arrays. Both when receiving Java objects as return types and when passing them as parameters.
Generating of Ballerina objects for Java child classes.
Fixes a possible concurrent modification exception that could arise.

Fixes #20902
Check List

[X] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #21793 into stage will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##            stage   #21793   +/-   ##
=======================================
  Coverage   14.67%   14.67%
=======================================
  Files          51       51
  Lines        1404     1404
  Branches      216      216
=======================================
  Hits          206      206
  Misses       1182     1182
  Partials       16       16

Continue to review full report at Codecov.

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


throw new mongoose.Error.OverwriteModelError(name);

Description

Type: Question

Hello guys!
Thank you for this awesome repo. I am currently learning react and this stack is awesome.
I am using mongoDB and I am trying to add a new table to the database.
I followed the code for "Topics" in order to create my own table but I get this error :
throw new mongoose.Error.OverwriteModelError(name);
Files
models/fiches.js:
import mongoose from 'mongoose';

const FicheSchema = new mongoose.Schema({
    id: String,
    text: String
});
export default mongoose.model('Fiche', FicheSchema);

controllers/fiches.js:
import Fiche from '../models/fiches';

export function all(req, res) {
    Fiche.find({}).exec((err, fiches) => {
        if (err) {
            console.log('Error in first query');
            return res.status(500).send('Something went wrong getting the data');
        }

        return res.json(fiches);
    });
}

export default{
    all
};

controllers/index.js :
import topics from './topics';
import users from './users';
import fiches from './fiches';

export { topics, users, fiches  };

export default {
  topics,
  users,
  fiches
};

finally the routes:
[...]
import { controllers, passport as passportConfig } from '../db';
const usersController = controllers && controllers.users;
const topicsController = controllers && controllers.topics;
const fichesController = controllers && controllers.fiches ;
/**
[...]
**/
  // fiches routes
  if (fichesController) {
    app.get('/fiches', fichesController.all);
  } else {
    console.warn(unsupportedMessage('fiches routes'));
  }
};

Question
How to create a new table with the mongoose schema and what did I do wrong?
--> Plus when I look for the compiled code I don't find the fiches-compiled files in it like for TopicSchema :
TopicSchema :
¦_ _ compiled/db/mongo/models
¦_ _ _ _ _ topics-compiled.js
¦_ _ _ _ _ topics.js
¦_ _ _ _ _ topics-compiled.js.map
But I find them in the server folder:
FicheSchema
¦_ _ server/db/mongo/models
¦_ _ _ _ _ fiches-compiled.js
¦_ _ _ _ _ fiches.js
¦_ _ _ _ _ fiches-compiled.js.map
Hope I was clear enough, thank you in advance!
(Sorry for long post)

export default mongoose.model('Fiche', FicheSchema);

you have this in controllers/fiches.js, but it should be at the bottom of models/fiches.js

thanks for your reply @psimyn.
Unfortunataley it was a copy/paste mistake, the  export default mongoose.model('Fiche', FicheSchema); line is indeed at the bottom of models/fiches.js..
I am sorry, I have edited my post.

Hey @psimyn.
I decided to do a fresh start and manage to reproduce the error.
It seems like when I edit the schema,  a  new "fiches-compiled.js" is created just  below the fiche.js :

This new compiled file will be in conflict whith the first "fiches-compiled" :

All I have to do is to delete this new file every time I make changes.. (It's really annoying)
FYI, I am using webstorm.
So Is webstorm creating automatically this file with the help of IDK what (babel/webpack?)
I will try with another text editor and keep you informed.
Any guesses here ?

The problem that you're having is that you're trying to register mongoose Scheme more than once.
The first time is:
https://github.com/reactGo/reactGo/blob/master/server/db/mongo/connect.js#L24
And the second time is in your controller.
Node caches the file based on its path so the controller loads ../models/fiches and the connect file loads __dirname/models/fiches
I am actually not 100% how does it work with Topics as the code seems the same XD
If you need the model itself you can try to work with mongoose.model('Fiches') in the controller as it will return the compiled mongoose scheme without the second init


Refactor website

The single-page website has grown to a size where it's tough to navigate. See https://github.com/dotfiles/dotfiles.github.com/issues/186 and https://github.com/dotfiles/dotfiles.github.com/issues/207.
This patch fixes #257. In particular, this patch:

Reorganizes topics (see sidebar)
Splits content across pages
Includes a brief introduction on the homepage
Introduces a notability criteria and removes non-notable content
Orders existing content based on notability/popularity

This patch aims to minimize changes to website content: it is mostly adapting content from the old site into the new organization.
You can of course test this out on your own machine, but if anyone wants to quickly preview it, here is a demo.

(I don't think GitHub automatically messages people when a pull request is referenced (257), so tagging relevant people here: @TheLocehiliosan @bedge @neeasade; no tags for pengwynn and unixorn cause they probably got an email for the pull request)
So here's a draft pull request. A couple things that might be useful to discuss:

What should the notability criteria be? I chose one somewhat arbitrarily, but I think it works out well -- the amount of information on the pages seems manageable now.
Do the page links in the sidebar look okay? I think it's a bit ugly and should probably be tweaked a bit before this is actually merged. The underline for the active page is ugly, and the sidebar doesn't look good on mobile.
Can we get rid of the "tips and tricks" + "FAQ" pages? In this PR, I tried to make minimal edits to actual content and only do reorganization. But I think those pages feel a bit out of place, giving some very specific advice that's probably covered by tutorials (or people can google those issues when they come up).
Is the content on the homepage reasonable? (the "navigating this site") Other than that, the homepage is now pretty devoid of content. I think this is fine though? (Not sure what other content we might want to put there with the new organization).

Other more minor things:

Can we remove the Twitter stuff from the sidebar? That account doesn't seem active anymore (last tweet was in 2013).
Similarly, is the Gauges link necessary?

Yes, remove the twitter account. I also don't think the gauges link is necessary either.


refactor(protobuf-compiler): factor out nx executor and publish

copilot:all

Current dependencies on/for this PR:

main

PR #3541   👈

PR #3538

This comment was auto-generated by Graphite.

@wittjosiah merged this pull request with Graphite.


Trim tags

We are still having an issue with calculating versions using prefixes.  My only guess is that the tag has leading whitespace? For some reason it is always getting the tag with db-1.0.0 but not the newer db-1.0.1.  Running the logic locally, it does fail if there is a leading space.
https://github.com/im-client/data-exchange/runs/4155549110?check_suite_focus=true
https://github.com/im-client/airflow/runs/4158791241?check_suite_focus=true

For these PRs, you'll need to make sure the readme.md example is updated with the newer version.


[Katana] RPC spec 0.6.0

Is your feature request related to a problem? Please describe.
Katana is incompatible with the new starkli which supports 0.6.0.
Describe the solution you'd like
Serve spec 0.6.0 😎
Describe alternatives you've considered
Downgrading starkli
Additional context
None

Hey, 0.6.0 rpc support was just merged last week (https://github.com/dojoengine/dojo/pull/1568), you can try it out in latest alpha release https://github.com/dojoengine/dojo/releases

🥳 Awesome!!!


Missing widget in the release v0.1.0

The widget file *.wgt is not deploy as a asset in the current publish version of the component.

There were some problems with version 0.1.0 so we finally remove this release, we have released 0.1.2 including the .wgt file.


Allow displaying side panel only on specific pages

Feature Request
Current WXT always adds a side_panel entry to the manifest file if at least one side panel is present. That makes the side panel be displayed on every site (i.e. it doesn't matter where and when I open the extension's side panel, it will be preserved across the tab switches). I would like to display the side panel only when a certain website is displayed in a tab, when I switch to a different tab, the side panel should be hidden.
This is possible by adding some code to the background/service worker script as described here, but it doesn't work if the side_panel entry with default_path is defined in the manifest.
I'd like to have an option to remove this entry entirely from the manifest, perhaps through <meta> tag although I don't have a big preference
Is your feature request related to a bug?
N/A
What are the alternatives?
I just found out that it should be possible to remove it through hooks, but I haven't checked it yet. In any case I think it would be nice to have a cleaner option for doing so.
Additional context
N/A

I was not familiar with this use-case... It's a good idea. The boilerplate to set this up, while possible today, is quite annoying.

Create a HTML entrypoint NOT named "sidepanel" (ex: entrypoints/<your-website>-sidepanel.html)
Add the tabs and sidePanel permissions to your manifest, as well as a blank action object:import { defineConfig } from "wxt";

// See https://wxt.dev/api/config.html
export default defineConfig({
  extensionApi: "chrome",
  manifest: {
    action: {},
    permissions: ["tabs", "sidePanel"],
  },
});

Add the following code to your background:const SIDEPANEL_MATCH_PATTERN = new MatchPattern("*://*.wxt.dev/*");

export default defineBackground(() => {
  browser.sidePanel.setPanelBehavior({ openPanelOnActionClick: true });

  browser.tabs.onUpdated.addListener(async (tabId, info, tab) => {
    if (!tab.url) return;

    if (SIDEPANEL_MATCH_PATTERN.includes(tab.url)) {
      // Enables the side panel on google.com
      await browser.sidePanel.setOptions({
        tabId,
        path: "wxt-sidepanel.html",
        enabled: true,
      });
    } else {
      // Disables the side panel on all other sites
      await browser.sidePanel.setOptions({
        tabId,
        enabled: false,
      });
    }
  });
});

Here's the full example: website-specific-sidepanel-example.zip

Thinking about how to implement this... It would be really nice if you could just provide the match patterns in a meta field, then WXT would automatically setup all that code in the background for you:
<meta name="sidepanel.matchPatterns" value="['*://*.wxt.dev/*']"></meta>

But we need to consider all the use-cases.

Only one sidepanel using side_panel.default_path
Different sidepanels for different websites
side_panel.default_path, but change it at runtime
Open sidepanel when clicking action

Any other use-cases I'm missing? I'm basically just copying from Chrome's docs... Only other case I can think of is combining options 1 and 2. Providing both a default path AND additional sidepanels with match patterns.
So let's think about the ideal way to implment these:

Only one sidepanel using side_panel.default_path: As it is today, just adding a sidepanel entrypoint does this.
Different sidepanels for different websites: What I recommended above with setting up match patterns would be useful. Need to think about how to support multiple side panels and merge the JS logic together.
side_panel.default_path, but change it at runtime: As it is today is fine, changing paths at runtime will be very custom, and up to the extension to do, not WXT. But applying a default path is a good start.
Open sidepanel when clicking action: This more applies to all three above cases. Would be nice to if there was a way to tell WXT to auatomically call setPanelBehavior({ openPanelOnActionClick: true }) for all the cases mentioned above.

If we need to support combining a default panel with other panel's specific to websites, we could use a custom named <name>.sidepanel.html entrypoint alongside the plain sidepanel.html file, which would be the default path.
So with that in mind, here's the changes I would recommend we make:
<meta name="wxt.matchPatterns" value="['*://*.wxt.dev/*']"></meta>
<meta name="wxt.openOnActionClick" value="true"></meta>

If you don't specify any wxt.matchPatterns, the side_panel.default_path will be added to the manifest and the sidepanel permission will be added as well.
If you specify wxt.matchPatterns, the side_panel object won't be added to the manifest, the tabs and sidepanel permission will be added, and the background code to watch tabs will be added automatically
If you specify wxt.openOnActionClick=true, we'll automatically call setPanelBehavior({ openPanelOnActionClick: true }) for you.

If there are multiple sidepanel entrypoints, we should only allow one without any match patterns.

How will we write that

background code to watch tabs

programmatically?
I've got the options from all the sidepanels.
I've also conditionally generated manifest.

With addWxtPlugin or via a custom Vite transform. Probably with a vite transform.

Yes.
But actually there's a third option: implement #1038 and add a virtual background entrypoint that does this. That would probably be the simplest option. I would prefer we do that.


Possibility to group knobs in the panel

Hello!
Is it possible to group knobs when they are shown in the panel? I use "chapters" add-on to enable using different components in one story. Each component has its own knobs. At the moment there is a long-long-long list of all knobs and it's very hard to navigate and find something that you need. So is there any chance to group those knobs in a way I need it?
Thank you!

I don't think that's something on the roadmap, but if you think you have a solution for it, feel free to open a PR.

Does anybody have any pointers on where to look to get this started? this feature is quite important for me, I'm thinking of implementing it.

@wildeyes the code for knobs is under addons/knobs. CONTRIBUTE.md should have some tips on how to get your dev environment set up.


SpongeForge server Don't drop after break tree.

SpongeForge : 1.12.2-2768-7.1.2-RC3487                                                                                Minecraft Forge : <IP_ADDRESS>68
DynamicTrees: 1.12.2-0.8.2
I openned issue in git spongeForge, but they never answered.
ServerLog after break tree: https://hastebin.com/oxohuhumah.hs

Whatever you have set up it looks like it blocks entity spawns for whatever reason.

In sponge 7.1.3-RC3495 bug don't reproduced.
Problem solved! =)


Environment-classifier Installation - ResolvePackageNotFound

(base) c:\git\cameratraps>conda env update -f environment-classifier.yml --prune
Collecting package metadata (repodata.json): done
Solving environment: failed
ResolvePackageNotFound:

accimage

Oops, the classifier environment has been run almost entirely in Linux, and the "accimage" package is Linux-only.  Fortunately, this package is optional.  I just commented out of environment-classifier.yml, and added optional instructions to install it for Linux users.  The code will work with or without it.  You can either get the latest version of the repo, or you can just comment accimage out of environment-classifier.yml.  Thanks for catching this!


Add IronicSpecCore struct

Adds a Core version of the IronicSpec to be used via the OpenStackControlplane. It is the same as the normal Spec only it is missing the containerImages.
Jira: OSPRH-4835

/lgtm


Add @mentions

The premise is that by "tagging" someone with an @ in any conversation the person will get a notification (including e-mail/push).
Topic raised here: https://community.foodsaving.world/t/mentions-on-karrot/732

Previous issue: https://github.com/yunity/karrot-frontend/issues/1092

I was thinking to push this forward a bit and looked into a few ways other software tools implement it.
The key bit is how to represent a mention in the text we store, there are many approaches.
Discourse
In discourse people have usernames, so having @nicksellen in the markdown text for a post will match the username nicksellen. If you change username, it goes through and rewrites all the posts to update it.
GitHub
GitHub also has bare @username mentions, but if you change your username, it will break the past mentions (https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/changing-your-github-username).
Slack
Slack uses message formatting like this <@U024BE7LH> where U024BE7LH is the user id.
markdown-it-mentions plugin
This plugin (https://github.com/quartzy/markdown-it-mentions) for markdown-it (which we use) uses this kind of format @[Freddie Mercury](mention://user/48249279) (a special mention:// url prefix). I kind of like that (although the plugin library itself is old, and I guess unmaintained... and in this case the name would not get updated if the user changed it).
I wondered if we can do something like mention://user/123 in the text... so it's technically still a valid URL. Then, everytime we render it, we can display the name nicely and a link to their profile.
...however

we don't currently have usernames (and they are needed for bare @username ones, as our display names have spaces in them, and don't have to be unique)
our message editor is just a plain textbox, no place to add autocomplete features in, and it would not be able to do any formatting of the text

yet...
I think a good way to implement this might be:

add usernames to Karrot user profiles
bare @username mentions in text
a minimal-as-possible autocomplete tool in the message editor
rewrite post content when users change their username (we are probably storing meta data about which users are mentioned in each post, so won't need to check all posts...)

... additionally, we might want to consider @ mentions for things other than users? I don't know how that would go... or what it would be for...
And as mentioned by vasileios, we could consider hashtags here whilst building out the infrastructure...

https://vue-mention.netlify.app/ might be useful. I can't see immediately whether it supports vue 2/3 though.

Nice research!
I'm naturally inclined not to introduce usernames, since it could be a hassle for existing users. Why not use their id´s, that is, their user number? Checking vue-mention it seems like it could work like that. There might be still the problem of users having exactly the same display names, but judging from my group (people usually use first and last name) that would be rare, and if that ever happens I imagine people would understand the issue and change their display names to avoid confusion.
Also, another assumption is that @-mentions would be restricted to groups, right?

With the ids it would look like @123 in the text editor when you're writing a message... which seems a bit cryptic?
The autocomplete for it could probably show the display name when you're typing it out... and when we display the name it could show a nicely formatted name..
I wonder if that would be usable enough for people?
(I remember slack actually having the problem where 2 people have the same display name, it makes it hard to see who somebody is referring to)
And yes, limiting it to within groups makes sense.

If going down the username route, existing users could get auto-generated ones, based on their display name, e.g. Nick Sellen -> "nicksellen", and they could edit them later.

I think autogenerating usernames would be an option to start with. And yes members if they see that the autogenerated username does not do the job they could edit them later. Would that mean though that they could edit the username? or that they d have to edit their 'name' which would then autogenerate another 'username'? I m also thinking of the ID which would appear in a more digit-like form as u mentioned above. This would mean that if I want to tag you Nick for example I should know your ID number which I don't quite get how it would be possible without adding a lot of noise in the process. In addition I think that using @ or any other form that does the job could be used beyond simply tagging a user. For example (and I m also making a connection here with the roles features we 've been discussing lately) sb could make a post 'in need of some @driver' or 'any available @distrubutors for tonight?' In that case, say me, Vasilis which has the role of a driver/distributor and all other members that have similar role will get a notification. That's a basic idea that just popped in my mind which can be explored more.

The idea for usernames fits what me and @brnsolikyl discussed last week too (notes), this is the relevant bit:

usernames seems maybe the way forward, automatically generate existing ones, and suggest usernames on registration based on display name
usernames are for each user across the whole of karrot instance, not per group
… not thinking yet about all the notification stuff

And yeah, I think it's good to allow them to be changed (independently from the name), and we can support rewriting all the past message content with the updated username too (which discourse does).
I really like the idea for @ mentioning roles too, it does create a difficulty as there could be a clash, somebody might have the username for a role.
The usernames would be global across the whole instance of karrot, but the role names would be per-group, which reduces the chance of conflict.... although that also creates complications, if someone tries to join a group with a username that would clash with a local role name... not clear how to handle that.
Would be simpler if there was another sign to use for that, maybe a double @? @@drivers, looks a bit ugly though. Or namespaced @role:drivers ... looks plausible to me...
In any case I would leave that bit out for now, as we don't really have roles like this yet anyway, but nice idea :+1:

I started the backend work over here --> https://github.com/karrot-dev/karrot-backend/pull/1207

Progress --> https://community.karrot.world/t/mentions-on-karrot/732/8 (little screencast showing some frontend UI stuff...)

looks great! Happy new @year 😆 🎉


Some key binds are repeated for different platforms

Some key binds are repeated just with the extra platform: "example" tags, is this how it's supposed to be considering the keys are the exact same.

Wouldn't it be cmd-space?

To my understanding, the Ctrl key is automatically remapped to Cmd on Mac, so one only has to write the shortcut once (as a Windows shortcut) and it automatically converted to a Mac shortcut. @RaymondLim I'm not familiar with the shortcut behavior, can you provide more details here?

This is by design.  All of the shortcuts you've shown differ between OSes; the first one listed is the default shortcut (in these cases shared by Win & Linux) and the other is a platform-specific override.
For the first two examples: Ctrl-Shift is not the same as Cmd-Ctrl (note no Shift in the second one)
The last example is a bit tricker: Ctrl in a shortcut is normally converted to Cmd automatically on Mac.  In order to override this and ensure Ctrl is used even on Mac, you use a platform-specific shortcut to disable the automatic conversion. This is documented on KeyBindingManager.  The reason Mac needs to be Ctrl-Space instead of Cmd-Space is that Cmd-Space is reserved by the OS for launching the Spotlight search feature.

Ok thx for the info I understand now


(Extra only). Implement support for Rope data-structure in one sorting algorithm

Decided to not pursue this due to out of scope. Implementing a plan instead


Added fallback execution in case of known errors in the importer

There are common errors that could be solved with other ogr2ogr options. This PR implements some fallbacks for know issues like:

Encoding problems: The most common case is the use of ISO-8859-1 that is not properly detected
Try to guess an incorrect date field: In this case we retry deactivating the guessing option and storing the field as string

Reject imports that, after check for known ogr2ogr errors, still have error in its output
This PR solves #4483, #4587 (and could be other issues that could be solved by this PR)
Please @juanignaciosl take a look :)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

I've done some comments on style, nothing serious, but I have doubts on the use of ogr2ogr2 instead of ogr2ogr. If there's a good reason it should be documented. :+1: after that!

Changes made. Wait for tests, test in staging and deploy

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Frontend tests were OK :+1: (details)

Please @juanignaciosl recheck this. I've added the ward to avoid to import files with some kind of ogr2ogr error and a refactor to move all the ogr2ogr error checking to the ogr2ogr wrapper.

Frontend tests were OK :+1: (details)

:+1:

Frontend tests were OK :+1: (details)


Why span name is always lowercase ?

zipkin2.Span.Builder#name

All span name has forced to lowercase, and it's hard to identify.
I think it's better to add a switch to let the user choose.

The reason for this is that some backends primary indexes of service/span
are binary (aka no concept of case sensitivity). So this helps to ensure
the user knows up-front that the data will eventually become downcased.
Otherwise, it would happen later so more surprises. Since we do aggregation
on service and span name, it is important to not miss on silly things like
case.
Agreed that this could be reconsidered, as now people are using zipkin
format out to other systems.. We can think about relaxing this, but can't
forget why we did it in the first place.
An implementation likely would not be user selection though as that is
awkward to do inside a struct library (configuration management of a
builder is weird and hard to reach). Likely, it would just be removing the
constraint.
On Sat, Mar 9, 2019 at 4:42 AM zhufeizzz<EMAIL_ADDRESS>wrote:

zipkin2.Span.Builder#name
All span name has forced to lowercase, and it's hard to identify.
I think it's better to add a switch to let the user choose.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/openzipkin/zipkin/issues/2438, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAD615zCH8wWaLTcNuy4LrFtxB0zqaKBks5vU4IWgaJpZM4bmlfE
.

right now, people usually use lower-hyphen in case format, btw

since changing this will impact several things, we need buy-in to do that (and time to address the concerns this would create also). For now, I'm closing this issue, but we can re-open it if things change.

Came here to say that I would also like this feature (to not force lowercase names). @adriancole is there any chance we could reopen this and gauge how much interest there is? Thanks

interest is one thing, interest in doing the work to accomplish it.. that's the limiting factor. no one I know has several months free time with the only gain being case preservation.
All the work to redo schemas of cassandra indexing to somehow support mixed case search, case deduplication in keyspaces etc, and then transition folks with migration plans.. this is a huge order to place on someone.
Remember tag values can be preserved and span names are usually derived from tags. Practical options are sometimes better than moving huge boulders up a hill.

ps it isn't just cassandra either, elasticsearch is similar. the span name would be greatly effected in terms of size and performance if switched from keyword to case insensitive. also, we'd open the possibility of bad search results coming back, resulting in client-side deduping on the UI.
It is a tall order, and I'd really recommend using tags as that has no change in the model. For example, we have site-specific tag support in the search and UI and the values there can be mixed case. They appear same as name in the UI controls.

Perhaps we could make this configurable with a simple boolean flag so that people who intend to use a backend that already supports case preservation can use it, and the rest of the community can continue to use the auto-lowercasing behavior.
(My actual use case: I'm using Spring Cloud Sleuth + Brave to report traces to LightStep using Zipkin reporting, and would like to preserve the case of span names and operation names for readability. Most names use PascalCase and this is not something that I can easily change organization-wide.)

@csabakos brave doesn't lowercase anything except when converting to Zipkin model. I've not seen the Lightstep integration, but there's no reason it has to convert to zipkin model which does the lowercasing. Literally the FinishedSpanHandler was made for rendering data differently for non-zipkin destinations. Please chat on gitter if you want more info as I think the topic isn't related to this thread now that you mention the use case. https://gitter.im/openzipkin/zipkin

as mentioned in chat, the boolean flag would be hard to pass and awkward on
a value type. Also, we'd be making our code intentionally incompliant with
our own spec which has been stable for ages. Finally an issue doesn't need
to be re-opened in order to have people vote for it.
the only reason I am asked specifically is usually people expect me
personally to do the work. I personally won't be doing this work. I can say
that for sure.
Anyone else can do this if they accept the responsibility that comes along
with it. This issue is about the full-scope feature of case insensitive
data, not the special case of reporting, though.
Since the reporting use-case is specific to Brave, which doesn't even
depend on code in this repo! I moved the issue about this here
https://github.com/openzipkin/brave/issues/1077
A smaller scope issue is easier for volunteers to pick up, if lightstep are
unable to implement a FinishedSpanHandler to do this on their own. Hope
this helps!


test(crosschain): add test for MsgBridgeCallResultClaim

Summary by CodeRabbit

New Features

Introduced a new method to efficiently handle bridge call results in cross-chain operations.
Added functionality to automatically create bridge accounts during bridge call processing.

Refactor

Streamlined the handling of bridge call results to improve performance and maintainability.

Tests

Implemented new test cases to ensure the reliability of bridge call result handling and refund processes.

Documentation

Updated documentation to reflect new and altered functionalities related to bridge calls and test cases.

mg


Generate and attach TTS generated Audio Files

Idea
Provide an audio player on the #show view of each word to play an attached MP3 recording of the word. A pure HTML solution is preferred. No need for a complex JavaScript player with a million functions.
Tasks

[ ] Create a class which handles the TTS stuff by using Google's WaveNet technology (https://cloud.google.com/text-to-speech/#section-11) to generate an audio file (MP3?) and attach that file to the word model. Provide a possibility in the configuration of the Rails project to customise configuration "stuff" (e.g. speed, API keys and kind of voice).
[ ] We use multiple voices which do a round robbing. The configuration has to accept an array with the to used voices.
[ ] Store the audio files in the production server file system. There should be a max file size of each audio file.
[ ] Google WaveNet has a rate limit for free projects. And we need to have a configuration for the pause between each call. Keep that in mind and make it part of our configuration. Info: We will not be able to run all words in the first month.
[ ] Create some sort of queuing system. Either by using Active Job or by reinventing the wheel. Obviously the system should be able to survive a reboot of the server and a deployment with a restart of a new software version.
[ ] Add an enable_tts boolean attribute to the word model (including the #edit form). It should be true by default. When ever it is changed, either a new audio file has to be generated or the old file has to be destroyed (from true or nil to false). Please add after_update/create hooks accordingly.
[ ] Add the audio player to the #show view and activate it if the audio file is attached to the word.
[ ] Write tests. Use common sense.
[ ] Create a task which loops through all words which don't have an audio file attached and triggers the TTS call.
[ ] Add some minimal documentation to the README.md how to use the class/method/task.
[ ] Make sure that the system is not triggered/used when the API keys are missing. Most developers will not have an API key ready when they first start wort.schule locally. They should not run into any trouble.

Please use vanilla build in Rails features when ever possible. Please use this issue to discuss and ask questions.

It would be great if we have an easy way to generate examples with the various options, so we can find out (through testing with students) which options are important.
The platform should use both male/female voices (varying from word to word).
And the amount of characters produced/used per months should be limited according to the Google Cloud limits.

It would be great if we have an easy way to generate examples with the various options, so we can find out (through testing with students) which options are important.

That is out of scope for the current budget. We will have to find the right settings manually.

The platform should use both male/female voices (varying from word to word). And the amount of characters produced/used per months should be limited according to the Google Cloud limits.

I’ll add it to the tasks.

@phortx Please feel free to suggest a better solution for the queuing and rate limit. Maybe a queue is not the best solution here. Maybe an additional ’waiting_for_tts‘ Boolean attribute and a cron job is a better and much easier to implement solution.

It would be great if we have an easy way to generate examples with the various options, so we can find out (through testing with students) which options are important.

That is out of scope for the current budget. We will have to find the right settings manually.

I didn't mean automagically, but to generate them by changing the values manually (maybe via an options page ;) ).

Random thoughts (they are really just that: thoughts):

There needs to be some kind of background job, that various places in the code can trigger. A cronjob should probably be able to trigger it, as well as the GUI.

Adding an API key should trigger that background job, so files are generated when you add an API key later on.

New developers may not have the cronjob entry. So maybe some action/activity on the web page should be able to trigger the job.

Maybe store a timestamp of when the audio file was generated. Maybe you want to re-generate the audio files at a later time, one by one, oldest first.

Also store a timestamp ("being_generated_since" or something, can be nil) that says when the word was put into the queue for the audio file to be generated, so the background job doesn't accidentally try to generate the same thing twice if invoked more than once. nil means that the file isn't currently being generated (either becaus the file exists already or because it was never generated).

Have some cronjob periodically clean entries with being_generated_since older than say 30 minutes, just to avoid zombies.

Maybe words added via the GUI just now should get a higher priority in the queue (or queue-like mechanism) than background stuff such as (re-)generating words, that have been in the system for longer.

You may want some property in the database table to invalidate audio files without deleting them straight away. I.e. a wod is changed (if that ever happens), then delete the audio file straight away, but if you change say the voice or something, then mark the audio file as outdated but still keep it until a new file is generated.

Maybe there shouldn't be a queue, but some task that is triggered periodically and/or via the GUI. That task is supposed to figure out what audio file to generate next. It could do that by a couple of rules like so:

Query the database for the newest word with being_generated_since == nil and without an audio file.
-If there is one => mark it as currently being generated in the database (being_generated_since), generate the audio file, when done set being_generated_since = nil. End of the task, start next iteration from the top!

If the query above didn't find a word, then continue here:

Query the database for the newest word with being_generated_since == nil.

...

Have appropriate (combined!) indices on the database table for those queries, so the query can be answered from the index alone.

Also store some timestamp(?) if some audio file failed to generate, so the background job doesn't keep working on the same thing forever.

What that generator task does as described above would need some refinement, e.g. to have files marked as outdated somewhere in between or as the last priority.

About cronjob vs. trigger vs. queue: It would be nice to have a possibility to trigger the API call to generate a new file. BUT that is a nice to have feature. It is not necessary. I think a simple cronjob and some more table attributes would serve us well and much quicker (cheaper) to implement. As a bonus it would be a much simpler system. Less that can go wrong.
Thoughts

We have to think about the crash scenario. Assuming we have a 'this_is_currently_being_processed' attribute then that attribute has to be set to false for all table entries when ever the Rails system gets (re-)started.
We have no need to hurry. We are limited by the number of possible API calls per month anyway. We can simply set the waiting_to_be_generated attribute to true and wait for the cronjob to search for the next "thing" to do.
Please be aware that the initial "fill" will take a couple of months anyway because of the rate limit in the free version. That is no problem.

@phortx I updated the initial issue text. Please tell me if anything is missing or not clear.

Regarding jobs you could use:

Sidekiq. Quite popular, has a cron plugin to regularly schedule jobs, but requires a Redis instance.
good_job. Stores everything in Postgres, so doesn't require another database. As Sidekiq, also requires a job running process though. It's in very active development and also has a UI to inspect queues and see some statistics.

Most queuing systems drop jobs when failed and don't store them when the Rails process restarts. So you might want to design around that in any case.

good_job. Stores everything in Postgres, so doesn't require another database. As Sidekiq, also requires a job running process though. It's in very active development and also has a UI to inspect queues and see some statistics.

Since maximum performance is not our problem here I'd like to use the PostgreSQL database to eliminate installing one more peace of software.

@phortx JFYI: You can auto close an issue by adding closes #121 to the git comment. Than that issue gets closed automatically once the code has landed in the main branch.
https://stackoverflow.com/questions/12235620/automatically-closing-issue-from-pull-request-in-github


requirement.txt

Can you give the version of the package,  for example, matplotlib = 2.3.4,scikit-image = 1.2.3.  Like other open source code.
so I can run the code in Docker

Hello! Thanks for your attention to our work! Our codebase works well on various environment settings, an example of mine is listed as follows:
absl-py                  2.1.0
addict                   2.4.0
aiofiles                 23.2.1
aiohappyeyeballs         2.4.0
aiohttp                  3.10.6
aiosignal                1.3.1
annotated-types          0.7.0
antlr4-python3-runtime   4.9.3
anyio                    4.6.2.post1
attrs                    24.2.0
beautifulsoup4           4.12.3
certifi                  2024.6.2
charset-normalizer       3.3.2
click                    8.1.7
contourpy                1.2.1
cycler                   0.12.1
dataclasses              0.6
docker-pycreds           0.4.0
einops                   0.8.0
fastapi                  0.115.4
ffmpy                    0.4.0
filelock                 3.14.0
flash-attn               2.6.1
focal-frequency-loss     0.3.0
fonttools                4.53.0
frozenlist               1.4.1
fsspec                   2024.6.0
future                   1.0.0
fvcore                   0.1.5.post20221221
gdown                    5.2.0
gitdb                    4.0.11
GitPython                3.1.43
gradio                   5.5.0
gradio_client            1.4.2
grpcio                   1.64.1
h11                      0.14.0
h5py                     3.11.0
httpcore                 1.0.6
httpx                    0.27.2
huggingface-hub          0.26.2
idna                     3.7
imageio                  2.34.1
importlib_metadata       8.0.0
iopath                   0.1.10
Jinja2                   3.1.4
joblib                   1.4.2
kiwisolver               1.4.5
kornia                   0.7.3
kornia_rs                0.1.4
lazy_loader              0.4
lightning-utilities      0.11.7
linformer                0.2.3
llvmlite                 0.43.0
lmdb                     1.5.1
lpips                    0.1.4
Markdown                 3.6
markdown-it-py           3.0.0
MarkupSafe               2.1.5
matplotlib               3.9.0
mdurl                    0.1.2
mpmath                   1.3.0
multidict                6.1.0
natsort                  8.4.0
natten                   0.17.1+torch230cu121
networkx                 3.3
numba                    0.60.0
numpy                    1.26.4
nvidia-cublas-cu12       <IP_ADDRESS>
nvidia-cuda-cupti-cu12   12.1.105
nvidia-cuda-nvrtc-cu12   12.1.105
nvidia-cuda-runtime-cu12 12.1.105
nvidia-cudnn-cu12        <IP_ADDRESS>
nvidia-cufft-cu12        <IP_ADDRESS>
nvidia-curand-cu12       <IP_ADDRESS>
nvidia-cusolver-cu12     <IP_ADDRESS>
nvidia-cusparse-cu12     <IP_ADDRESS>
nvidia-nccl-cu12         2.20.5
nvidia-nvjitlink-cu12    12.5.40
nvidia-nvtx-cu12         12.1.105
omegaconf                2.3.0
opencv-python            <IP_ADDRESS>
orjson                   3.10.11
packaging                24.1
pandas                   2.2.3
pillow                   10.3.0
pip                      24.0
platformdirs             4.2.2
portalocker              2.8.2
protobuf                 4.25.3
psutil                   6.1.0
ptflops                  0.7.3
pycocotools              2.0.8
pydantic                 2.9.2
pydantic_core            2.23.4
pydub                    0.25.1
Pygments                 2.18.0
PyMatting                1.1.12
pyparsing                3.1.2
PySocks                  1.7.1
python-dateutil          2.9.0.post0
python-multipart         0.0.12
pytorch-lightning        2.4.0
pytorch-msssim           1.0.0
pytz                     2024.2
PyWavelets               1.7.0
PyYAML                   6.0.1
requests                 2.32.3
rich                     13.9.4
ruff                     0.7.3
safehttpx                0.1.1
safetensors              0.4.3
scikit-image             0.18.1
scikit-learn             1.5.0
scipy                    1.13.1
semantic-version         2.10.0
sentry-sdk               2.17.0
setproctitle             1.3.3
setuptools               69.5.1
shellingham              1.5.4
six                      1.16.0
smmap                    5.0.1
sniffio                  1.3.1
soupsieve                2.5
starlette                0.41.2
swattention              1.0
sympy                    1.12.1
tabulate                 0.9.0
tensorboard              2.17.0
tensorboard-data-server  0.7.2
termcolor                2.4.0
thop                     0.1.1.post2209072238
threadpoolctl            3.5.0
tifffile                 2024.5.22
timm                     1.0.3
tomli                    2.0.1
tomlkit                  0.12.0
torch                    2.3.1
torchvision              0.18.1
tqdm                     4.66.4
triton                   2.3.1
typer                    0.13.0
typing_extensions        4.12.2
tzdata                   2024.2
urllib3                  2.2.1
uvicorn                  0.32.0
wandb                    0.18.5
websockets               12.0
Werkzeug                 3.0.3
wheel                    0.43.0
yacs                     0.1.8
yapf                     0.40.2
yarl                     1.12.1
zipp                     3.19.2

Where is the structural diagram of the RA module? I couldn't find it in the paper.

Hello! The RA module, i.e., Regional Attention module, can be seen in Fig 1(c) of the paper, where it is schematically compared with Self Attention and Window Attention.

I saw it, it's just a simple diagram. What I'm talking about is the framework diagram, which means others can reproduce the code based on your framework diagram. This diagram was not provided in your paper.

I cannot know how the code of the RA module is completed based solely on Fig 1 (c)

I saw it, it's just a simple diagram. What I'm talking about is the framework diagram, which means others can reproduce the code based on your framework diagram. This diagram was not provided in your paper.

We were inspired by Neighborhood Attention Transformer when implementing Regional Attention, you can see  Neighborhood Attention Transformer & NATTEN for more details.


upgrade: print (but don't raise) cask upgrade exceptions

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew typecheck with your changes locally?
[x] Have you successfully run brew tests with your changes locally?

brew upgrade raises an error if any outdated cask fails to upgrade. This is bad because this makes brew upgrade exit early and prevents Homebrew.messages.display_messages from being called.
I fixed this by adding a raise_exceptions parameter so that:

brew upgrade can set it to false to print the exceptions, and
upgrade_spec.rb can set it to true for unit testing

I also changed the upgrade methods to void because their return values aren't used anymore.

upgrade_spec.rb can set it to true for unit testing

@FnControlOption I think if this option is only used for unit testing it can be removed and default to false. Thoughts?

In master:

Formula upgrade exceptions are printed immediately when they are raised.
Cask upgrade exceptions are caught when raised, and then all caught exceptions are raised at the end.
This prevents caveats from being printed if any cask raises an exception during upgrade.

In this PR:

Formula upgrade exceptions are still printed as before.
Cask upgrade exceptions are now printed immediately like formula exceptions.
Caveats are now printed even if a cask raises an exception.

Two questions I have are:

How should exceptions be handled? Should all exceptions from formulae and casks be caught and then printed at the end, or should they be printed immediately?
If exceptions should be printed at the end, which should be printed last: caveats or exceptions? Or instead, what about converting exceptions into caveats or vice-versa?

In this PR:

Formula upgrade exceptions are still printed as before.
Cask upgrade exceptions are now printed immediately like formula exceptions.
Caveats are now printed even if a cask raises an exception.

Sounds great.

How should exceptions be handled? Should all exceptions from formulae and casks be caught and then printed at the end, or should they be printed immediately?

I think printing exceptions immediately makes sense to me. I could also see an argument for grouping them and printing them at the end as well in a slightly different format (but I think that would be a follow-up PR).


Delete list and suggestion entries by number

[ ] Always add number to suggestions list
[ ] Allow number parameter on /suggestions rm <type> [number]
[x] Allow number parameter on /list rm [number]

Won't do for suggestions right now.


Fixing the ResourceQuota update

Closes #14: the hotfix works but still a draft to improve the code-base.

@bsctl since you're the bug reporter, I just release a new commit (8e60985651d9b2121bffc767b8290b70da2d711b) that should provide a performance enhancement regarding ResourceQuota items.
The Issue has been already solved by the first one (fc0162da523cf6d84c6c9f886359b8bd495680b9), this is just an improvement.
Would you mind testing it? :innocent:

@bsctl sorry to ping you back again, did you tested the current branch?


No difference in Terminal modes

Is it intentional, that there is no difference in status bar if you are in 'terminal normal mode' or just in 'terminal mode'?
This would be very useful as it is hard for me to see which one I am in.
Has there been any consideration for this?

no not yet and no request for it ;)

can you count this issue as a request then :D ?


Qa

Coverage increased (+0.003%) to 84.373% when pulling a97970d02f2f29e4a5bd60c6d9b6ebd70c850fec on qa into 168676f5a7ef7ddd9f1259dc307d8597fed3452d on master.


Dvd s3e6

Added a new podcast, as I had to pull in from master again, it threw up errors, but these are from other files, not ones I created.
Also the index file in src/content/en/fundamentals/index.md needed a {# wf_blink_components: N/A #} for it to push to the main repo, so I added one.

Whoops!
There were 64 warnings that will prevent this PR from being merged. Please take a look, and either fix, or provide a justification for why they can't be fixed.
WARNINGS
src/content/en/fundamentals/index.md#L21 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L23 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L26 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L28 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L52 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L53 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L71 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L72 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L95 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L96 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L116 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L117 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L143 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L158 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L171 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L173 - Line must be at most 100 characters
src/content/en/fundamentals/index.md#L176 - Line must be at most 100 characters
src/content/en/fundamentals/performance/rail.md#L273 - Common typo found: 'node' Should it be 'Node'?
src/content/en/fundamentals/performance/rail.md#L334 - Common typo found: 'node' Should it be 'Node'?
src/content/en/fundamentals/performance/rail.md#L317 - Common typo found: 'Service Worker' Should it be 'service worker'? Capitalize Service if it's the first word in the sentence.
src/content/en/fundamentals/performance/rail.md#L3 - Common typo found: 'life cycle' Should it be 'lifecycle'? See: https://developers.google.com/style/word-list#lifecycle
src/content/en/fundamentals/performance/rail.md#L22 - Common typo found: 'life cycle' Should it be 'lifecycle'? See: https://developers.google.com/style/word-list#lifecycle
src/content/en/fundamentals/web-components/customelements.md#L472 - '

You seem to have updated dates on a lot of files you've not edited.

I just did a pull from master and they came up.


CI: use newer versions of GH Actions

In order to avoid warnings output in CI screens.

The following actions uses node12 which is deprecated and will be forced to run on node16: actions/upload-artifact@v2. For more info:
https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/

With this change, we got no such warning.

@ioquatix Should a change like this go into bake-modernize, too?


Add TryFrom<{I,U}256> Conversion To Primitive Integer Types

This issue captures the work of adding conversion implementations from 256-bit integer types to Rust primitive integer types. For example:
impl TryFrom<U256> for i64 {
    // ...
}

Already implemented, just not showing up on docs.rs


put back feature flag 'delayed-compaction' and 'old-ui'

This flag has been added with PR https://github.com/prometheus/prometheus/pull/12532.
It seems this flag has been removed somehow. The Git history is not clear 🤔.
Perhaps it's coming from the this commit https://github.com/prometheus/prometheus/commit/60366a8a05c87c922a9d76e532062017a67e5f39

/cc @jan--f

I have added back the flag 'old-ui' that seems to have been removed as well (/cc @juliusv)

@Nexucis Thanks for catching that, I guess it got removed somewhere in some 3.0 merge process. However, the list is alphabetically sorted, could you make sure that the added values are sorted correctly as well?

@Nexucis Thanks for catching that, I guess it got removed somewhere in some 3.0 merge process. However, the list is alphabetically sorted, could you make sure that the added values are sorted correctly as well?

heu are you sure it should be alphabetically sorted ? Because currently it's not

Whoops, I really thought it was until now, maybe I always looked at the right subparts that were sorted 😅
Oh well... 👍


Instead of compiler specific align hint use C++ standard aligned alloc

We can use alignas, std::aligned_alloc and std::free that are in the C++ standard instead of using DACE_ALIGN + delete[] which are compiler specific. Even though both Clang, GCC support this extension...

Also please remember that we are trying to generate as much C99 as possible. We only use C++ if we must

In which c++ standard was this added?

C11, and since it is in C standard library, C++ gets it too

Also please remember that we are trying to generate as much C99 as possible. We only use C++ if we must

Is there a specific reason for C99? We already use C++11 features like std::mutex and std::atomics.

Only because we have to and not on device code