fix: site title and short_id shown on unpublish dialog

Pre-Flight checklist

[ ] Screenshots and design review for any changes that affect layout or styling
[ ] Migrations

[ ] Migration is backwards-compatible with current production code

[ ] Testing

[ ] Code is tested
[ ] Changes have been manually tested

[ ] Settings

[ ] New settings are documented and present in app.json
[ ] New settings have reasonable development defaults, if applicable
[ ] Opened issue for DevOps regarding necessary configuration changes to deployed environments

What are the relevant tickets?
closes https://github.com/mitodl/ocw-studio/issues/1699
What's this PR do?

Replaces website name with website title and short ID on unpublish confirmation dialog.

How should this be manually tested?

Checkout this branch
Go to /sites page
Click unpublish for any website
Verify that website's title and short id are shown in the unpublish confirmation dialog
Proceed with unpublish and verify that the site is unpublished successfully.

Screenshots (if appropriate)

@pdpinch Now showing title (short id) on the unpublish confirmation dialog as shown in the PR description.
Is this fine or do we want to have some other format?


SMTP configuration is not optional

config_template.yaml suggests that the use of email is optional:
# Enter an smtp configuration. Remove this config entirely, if you do not want so send mails.

... however, this seems not to be true. I commented out the entire block so there is no smtp node at the top-level. Upon inserting a disk, I get:
Starting the backup now. You will receive an email once the backup has completed and you can safely unplug the disk.
ERROR: An unexpected error occurred: 'NoneType' object has no attribute 'login'
Traceback (most recent call last):
  File "/home/admin/autobackup/monitor.py", line 86, in start_waiting_for_udev_trigger
    import_decrypt_backup_export(device_label, config, logger)
  File "/home/admin/autobackup/backup.py", line 18, in import_decrypt_backup_export
    mail(f"Plugged in disk {device_label} that is matching configuration:\n"+
  File "/home/admin/autobackup/mail_util.py", line 43, in mail
    send_email("ZFS-Autobackup with UDEV Trigger", message, config, logger)
  File "/home/admin/autobackup/mail_util.py", line 22, in send_email
    message['From'] = config.login  # Set email from
                      ^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'login'

@0xabu you are right, I planned to have it optional but then never tried without one. Update the script with ./trigger.sh --install and try again. Let me know if you find anything else.


Add sphinx documentation

It would be nice to add proper sphinx documentation for xskillscore hosted on readthedocs. A really barebones version is hosted at https://github.com/bradyrx/esmtools/, which gives you the essentials. We have more expansive documentation at https://github.com/bradyrx/climpred, which shows you how to use notebooks in the docs.
I think just having the API hosted more formally + some example notebooks would be great. @hdrake expressed interest in leading this. However, I think readthedocs needs to be run by the owner of the repo (@raybellwaves). Perhaps the sphinx can be assembled by someone and then the readthedocs settings set up by @raybellwaves?

Sounds good. Do I need to setup the readthedocs account before someone can make a PR?

I would say as long as it's set up prior to the PR being merged. You shouldn't need to change any of the default settings really. Just make the default version/branch master under advanced settings. Plus repo URL and name under admin > settings.
The rest will be handled by the readthedocs.yml file and the docs folder. They are working on building docs off of PRs as a testing measure, but it's not fully in yet. So essentially reviewers just need to clone the PR and build the docs locally and make sure it looks as expected.

I'd like to get to this soon-ish. I think we just build a docs folder via a PR then have Ray register it on readthedocs and add the CI check on it and we should be fine.

https://xskillscore.readthedocs.io/en/latest/

Should be registered at least. Welcome to do a "hello world" rtd PR to check


how maximum size apk can be process?

hi...
i use this tool, try to get java code from apk, but always show notification "file is too large".
the apk is 12mb.. is it too large? how maximum size is accepted?
thanks ..

https://github.com/deathmarine/Luyten/blob/64af8d1df1d2cab029779142726fbcd8bc482956/src/us/deathmarine/luyten/Model.java
Edit Model.java and then recompile


Make smaller webpack bundles

I have followed this page to integrate the esm version by using plain webpack.
The file generated, app.bundle.js, has 2.1Mb. What I need is the editor for .js, .json, .css and .html.
Does anyone know if it is possible to make smaller bundles that can be loaded faster?

@chengtie I would suggest you to use the lazy load approach with webpack.
For example this will load a monaco bundle separately.
import(/* webpackChunkName: "monaco-editor" */ 'monaco-editor').then(() => {
      // your code here
});

As you can also notice while building the project that webpack generates a lot of 1.js, 2.js, etc files (which contain language set ups [js, css, python, etc]). They are also being loaded asynchronously inside monaco.

You can also skip unnecessary features from the build. You can find an example here.


Add composer.json

This allows these classes to be included into projects via the PHP dependancy manager Composer and be autoloaded.

bump

Definitely useful, please merge the pull request :)

+1

@camfindlay @DamienMetzger @gaillafr thanks for the PR and the feedback! I'm a tiny bit nervous about this, because we've always considered this a piece of sample code, rather than an official library.
We're huge composer fans otherwise, so I like the idea of making this accessible to more users. My only concern is making it an official library (installed via composer) now, before we've considered its implications.
Glad to do it as a stopgap, if people are comfortable with the interface changing quite a bit as it evolves.
Thoughts?
(And again, thanks for engaging!)

Here is my suggestion:
Accept the composer.json file (it only shows up in packagist when you actually submit it), as a stop gap until you are happy to submit to packagist user can simply put a "repository" config in their composer.json.
I'd also suggest adding an open source license something like a BSD or MIT (note if you're worried about any liability or risk these licenses mean you retain copyright, license a bundle of rights for others to use/modify/redistribute the code and the absolve your company of any legal obligation). Happy to help if you need to understand more about open source licenses.
Make sure and tag the current state of this code as 0.1.0 and as you do major refactors of the code try releasing version based on semantic versioning http://semver.org
Open source users are pretty tolerant of changes as long as you're good with tagging your versions and the valuable bit is actually progressing the work transparently here on GitHub so those of us using the classes can help with peer review/catching bugs etc.

I agree with every single points of @camfindlay answer :)
There are no implications as long as it is not submitted to packagist.

Hey @andyfowler just following up on this.
I don't think there is any major implication for accepting the composer file as mentioned above. Unless you actively submit this to Packagist it won't be listed there and having a composer file makes this still very useful for developers. The php wrapper is useful and it makes sense to be able to use it directly from GitHub via Composer rather than making a copy paste of this or a fork (which is what I'm currently doing).
I'd suggest simply add a permissive license to the repo and accept the composer pull request. A license such as the 3-clause BSD legally negates any warranty if there is a concern about commercial risks or obligations from Nutshell by having others use this code (even if it just a sample it's conceivable that someone can copy/paste this into their application).
Happy to have further discussions with you around open sourcing if needed and awesome that you guys have a GitHub and release your API wrappers here. :+1:

Having the package fully unit tested (ideally through an automated build process like Travis CI) would also contribute significantly to the project's trustworthiness.
For my company, not being install-able via composer and not being fully tested are both automatic deal-breakers. Nutshell itself is off the table for any of our client projects based on the weakness of the first-party (PHP) API library. I realize it's a lot of work to maintain professional quality libraries in a lot of (probably unfamiliar) languages, but when I'm reviewing CRM solutions these things keep otherwise viable packages off the short list. I'd love for that to be different a year from now. Good luck, this is a good first step! :+1:


Add prefix to the list

Can we add prefix to the list? Thanks!

Sure! Thanks for the contribution!


Failed to start node after PD/Tendermint restart

My node was active with full sync.
I always start processes in screen.
For tendermint this command is tendermint start --home ~/.penumbra/testnet_data/node0/tendermint
For pd - cargo run --bin pd --release -- start --home ~/.penumbra/testnet_data/node0/pd --grpc-port 8081 --metrics-port 9009
I went to the screen pd and pressed ctrl + c.
Then I re-entered the command for the pd, and the tendermint (in separate screens).
And in the end I got the following logs:
1 For PD:
cargo run --bin pd --release -- start --home ~/.penumbra/testnet_data/node0/pd --grpc-port 8081 --metrics-port 9009
    Finished release [optimized] target(s) in 4.26s
     Running `target/release/pd start --home /root/.penumbra/testnet_data/node0/pd --grpc-port 8081 --metrics-port 9009`
2022-11-02T22:34:04.829347Z  INFO starting pd host="<IP_ADDRESS>" abci_port=26658 grpc_port=8081
2022-11-02T22:34:04.830958Z  INFO opening rocksdb path="/root/.penumbra/testnet_data/node0/pd/rocksdb"
2022-11-02T22:34:04.946846Z  INFO consensus::Worker::new: initializing App instance
2022-11-02T22:34:04.962682Z  INFO mempool::Worker::new: initializing App instance
2022-11-02T22:34:04.963415Z  INFO starting ABCI server addr="<IP_ADDRESS>:26658"
2022-11-02T22:34:04.963722Z  INFO bound tcp listener local_addr=<IP_ADDRESS>:26658
2022-11-02T22:34:06.531475Z  INFO listening for requests
2022-11-02T22:34:06.533794Z  INFO listening for requests
2022-11-02T22:34:06.534021Z  INFO listening for requests
2022-11-02T22:34:06.534497Z  INFO listening for requests
2022-11-02T22:34:06.549842Z  INFO abci:Info: info=Info { version: "v0.34.21", block_version: 11, p2p_version: 8 }

2 For Tenddermint:
tendermint start --home ~/.penumbra/testnet_data/node0/tendermint
I[2022-11-02|23:33:54.526] service start                                module=proxy msg="Starting multiAppConn service" impl=multiAppConn
I[2022-11-02|23:33:54.526] service start                                module=abci-client connection=query msg="Starting socketClient service" impl=socketClient
E[2022-11-02|23:33:54.527] abci.socketClient failed to connect to tcp://<IP_ADDRESS>:26658.  Retrying after 3s... module=abci-client connection=query err="dial tcp <IP_ADDRESS>:26658: connect: connection refused"
E[2022-11-02|23:33:57.528] abci.socketClient failed to connect to tcp://<IP_ADDRESS>:26658.  Retrying after 3s... module=abci-client connection=query err="dial tcp <IP_ADDRESS>:26658: connect: connection refused"
E[2022-11-02|23:34:00.529] abci.socketClient failed to connect to tcp://<IP_ADDRESS>:26658.  Retrying after 3s... module=abci-client connection=query err="dial tcp <IP_ADDRESS>:26658: connect: connection refused"
E[2022-11-02|23:34:03.529] abci.socketClient failed to connect to tcp://<IP_ADDRESS>:26658.  Retrying after 3s... module=abci-client connection=query err="dial tcp <IP_ADDRESS>:26658: connect: connection refused"
I[2022-11-02|23:34:06.533] service start                                module=abci-client connection=snapshot msg="Starting socketClient service" impl=socketClient
I[2022-11-02|23:34:06.533] service start                                module=abci-client connection=mempool msg="Starting socketClient service" impl=socketClient
I[2022-11-02|23:34:06.534] service start                                module=abci-client connection=consensus msg="Starting socketClient service" impl=socketClient
I[2022-11-02|23:34:06.534] service start                                module=events msg="Starting EventBus service" impl=EventBus
I[2022-11-02|23:34:06.534] service start                                module=pubsub msg="Starting PubSub service" impl=PubSub
I[2022-11-02|23:34:06.545] service start                                module=txindex msg="Starting IndexerService service" impl=IndexerService
I[2022-11-02|23:34:06.554] ABCI Handshake App Info                      module=consensus height=36310 hash=450F03BDCE55C7374F9B935AD196E4E994005A92626C7F2C69858069BAD7261E software-version=034-aoede protocol-version=1
I[2022-11-02|23:34:06.554] ABCI Replay Blocks                           module=consensus appHeight=36310 storeHeight=36310 stateHeight=36310
I[2022-11-02|23:34:06.554] Completed ABCI Handshake - Tendermint and App are synced module=consensus appHeight=36310 appHash=450F03BDCE55C7374F9B935AD196E4E994005A92626C7F2C69858069BAD7261E
I[2022-11-02|23:34:06.554] Version info                                 module=main tendermint_version=v0.34.21 block=11 p2p=8
I[2022-11-02|23:34:06.554] This node is a validator                     module=consensus addr=7034D647390E11CE3A6E6B1B0A04DD567B8F34C9 pubKey=PubKeyEd25519{F4BF33A5A43977DC56120B48AB49DCB64E930E114B8560E08DA5894B4EE9DCD0}
I[2022-11-02|23:34:06.567] P2P Node ID                                  module=p2p ID=5ce7fad6364f2c8912e6abccefa8eb5bae03b970 file=/root/.penumbra/testnet_data/node0/tendermint/config/node_key.json
I[2022-11-02|23:34:06.567] Adding persistent peers                      module=p2p addrs=[]
I[2022-11-02|23:34:06.567] Adding unconditional peer ids                module=p2p ids=[]
I[2022-11-02|23:34:06.567] Add our address to book                      module=p2p book=/root/.penumbra/testnet_data/node0/tendermint/config/addrbook.json addr=5ce7fad6364f2c8912e6abccefa8eb5bae03b970@<IP_ADDRESS>:26656
I[2022-11-02|23:34:06.568] service start                                module=main msg="Starting Node service" impl=Node
I[2022-11-02|23:34:06.568] Starting pprof server                        module=main laddr=:6060
I[2022-11-02|23:34:06.576] service start                                module=p2p msg="Starting P2P Switch service" impl="P2P Switch"
I[2022-11-02|23:34:06.576] service start                                module=blockchain msg="Starting BlockchainReactor service" impl=BlockchainReactor
I[2022-11-02|23:34:06.576] service start                                module=blockchain msg="Starting BlockPool service" impl=BlockPool
I[2022-11-02|23:34:06.576] serve                                        module=rpc-server msg="Starting RPC HTTP server on [::]:26657"
I[2022-11-02|23:34:06.578] service start                                module=consensus msg="Starting Consensus service" impl=ConsensusReactor
I[2022-11-02|23:34:06.578] Reactor                                      module=consensus waitSync=true
I[2022-11-02|23:34:06.578] service start                                module=evidence msg="Starting Evidence service" impl=Evidence
I[2022-11-02|23:34:06.578] service start                                module=statesync msg="Starting StateSync service" impl=StateSync
I[2022-11-02|23:34:06.578] service start                                module=pex msg="Starting PEX service" impl=PEX
I[2022-11-02|23:34:06.578] service start                                module=p2p book=/root/.penumbra/testnet_data/node0/tendermint/config/addrbook.json msg="Starting AddrBook service" impl=AddrBook
I[2022-11-02|23:34:06.627] Saving AddrBook to file                      module=p2p book=/root/.penumbra/testnet_data/node0/tendermint/config/addrbook.json size=1
I[2022-11-02|23:34:06.627] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:34:06.629] Started node                                 module=main nodeInfo="{ProtocolVersion:{P2P:8 Block:11 App:0} DefaultNodeID:5ce7fad6364f2c8912e6abccefa8eb5bae03b970 ListenAddr:tcp://<IP_ADDRESS>:26656 Network:penumbra-testnet-aoede Version:v0.34.21 Channels:40202122233038606100 Moniker:archebald Other:{TxIndex:on RPCAddress:tcp://<IP_ADDRESS>:26657}}"
I[2022-11-02|23:34:06.629] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:34:36.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:34:36.630] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:35:06.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:35:06.630] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:35:36.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:35:36.630] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:36:06.580] Saving AddrBook to file                      module=p2p book=/root/.penumbra/testnet_data/node0/tendermint/config/addrbook.json size=1
I[2022-11-02|23:36:06.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:36:06.630] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:36:36.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:37:06.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:37:06.631] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:37:36.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:37:55.028] Inbound Peer rejected                        module=p2p err="auth failure: handshake failed: EOF" numPeers=0
I[2022-11-02|23:38:06.581] Saving AddrBook to file                      module=p2p book=/root/.penumbra/testnet_data/node0/tendermint/config/addrbook.json size=1
I[2022-11-02|23:38:06.629] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:38:22.779] Inbound Peer rejected                        module=p2p err="auth failure: handshake failed: EOF" numPeers=0
I[2022-11-02|23:38:36.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:38:36.630] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:39:06.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:39:36.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10
I[2022-11-02|23:40:06.580] Saving AddrBook to file                      module=p2p book=/root/.penumbra/testnet_data/node0/tendermint/config/addrbook.json size=1
I[2022-11-02|23:40:06.630] Ensure peers                                 module=pex numOutPeers=0 numInPeers=0 numDialing=0 numToDial=10

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

Howdy, @Archebald-now. I realize we've been slow to respond here, but there's been relevant discussion in the Discord of late, and I recall you've been active there, as well. The most salient log lines in what you've shared appear to me to be:
I[2022-11-02|23:35:36.630] Dialing peer                                 module=p2p address=32f9aa283d93df60286771e9ff8c2823c08e5db5@<IP_ADDRESS>:26357
I[2022-11-02|23:36:06.580] Saving AddrBook to file                      module=p2p book=/root/.penumbra/testnet_data/node0/tendermint/config/addrbook.json size=1

Looks like pd is running just fine, but tendermint is having trouble connecting to peers. Please file updates if you experience this with newer testnets, and make sure to name the testnet (e.g. 036-iocaste.2). Similar reports from others are very welcome, too.

A recent change should help greatly here:  testnet join will now pull in many peers from the net_info endpoint, rather than just setting a single peer (https://github.com/penumbra-zone/penumbra/pull/1672). That change will be part of the next testnet.

thanks a lot for the answer, yes that's right, now I solved the problem by
adding more peers that are currently active, and everything began to work
вт, 29 лист. 2022, 19:29 користувач Conor Schaefer @.***>
пише:

A recent change should help greatly here: testnet join will now pull in
many peers from the net_info endpoint, rather than just setting a single
peer (#1672 https://github.com/penumbra-zone/penumbra/pull/1672). That
change will be part of the next testnet.
—
Reply to this email directly, view it on GitHub
https://github.com/penumbra-zone/penumbra/issues/1577#issuecomment-1331020666,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOKB3KTREEG3BICRBJ65B2DWKY4PXANCNFSM6AAAAAARVTVGXM
.
You are receiving this because you were mentioned.Message ID:
@.***>

We've got more changes to the peering logic for testnets tracked in #1847, so closing this issue.


"webhook.enabled" means "webhook disabled"

Hello,
in line 264 values.yaml: https://github.com/8gears/n8n-helm-chart/blob/master/values.yaml
.Values.scaling.webhook.enabed is set to false:
 webhook:
    enabled: false
    count: 1

However, in line 95-97 _helpers.tpl: https://github.com/8gears/n8n-helm-chart/blob/master/templates/_helpers.tpl
the environment variable N8N_DISABLE_PRODUCTION_MAIN_PROCESS is set to true, if .Values.scaling.webhook.enabled is set to true:
{{- if .Values.scaling.webhook.enabled }}
- name: "N8N_DISABLE_PRODUCTION_MAIN_PROCESS"
  value: "true"
{{ end }}

Description of N8N_DISABLE_PRODUCTION_MAIN_PROCESS:
Disable production webhooks from main process. This helps ensure no HTTP traffic load to main process when using webhook-specific processes.

so seemlingly "enabling" webhooks actually disables them for production use. Debugging this caused us hours of headache.

hmm, I see, what would you suggest solving the situation, and save many people a lot of debug time?

For example: rename .Values.scaling.webhook.enabed to .Values.scaling.webhook.disabled
 webhook:
    disabled: false
    count: 1

This has a few flaws. Every service has the notation service.enabled. This is used here and is practice in other charts. It is also advised to do the same in general programming
Any other ideas?

Alright, I see. Then I think a simple comment would be sufficient and shouldn't do any harm :)


Misleading error message in useFetch

Environment

Operating System: Windows_NT
Node Version:     v18.18.1
Nuxt Version:     3.8.1
CLI Version:      3.9.1
Nitro Version:    2.7.2
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      devtools
Runtime Modules:  -
Build Modules:    -

Reproduction
Minimal reproduction:
https://stackblitz.com/edit/github-d87l76?file=components%2FPage.vue
Page.vue
<template>
   {{error && [error] || data}}
</template><template>
  <button @click="show=!show">toggle</button>
  <Page v-if="show"/>
</template>
<script setup>
const show = ref(false)
</script>
<script setup>
const {error, data} = await useFetch('https://ord.uib.no/bm/fil/article100new.json')
</script>

app.vue
<template>
  <button @click="show=!show">toggle</button>
  <Page v-if="show"/>
</template>
<script setup>
const show = ref(false)
</script>

After the page has finished loading in the browser, disconnect from the internet, or select 'offline' in the browser devtools. Then click the button to render the Page-component. The error message will be " Failed to fetch", with status code 500.
Describe the bug
When internet connection is lost, useFetch returns it as an internal server error when using an external API:
{ "cause": "TypeError: Failed to fetch", "message": "[GET] "https://ord.uib.no/bm/fil/article100new.json\":  Failed to fetch", "name": "Error", "statusCode": 500 }
In the browser devtools I see an error code in fetch.js that makes more sense: net::ERR_INTERNET_DISCONNECTED, but I'm unable to capture this with useFetch.
Additional context
The error code is 500 even if SSR is disabled.
Logs
No response

Sounds like an issue that should be raised in the underlying https://github.com/unjs/ofetch library instead ☺


Add a GitHub Action to test the benchmarks

This PR adds a GitHub Action workflow to compile and run the benchmarks across multiple operating systems (Ubuntu 22.04, macOS 14, and Windows 2022). The workflow ensures that the codebase compiles and runs successfully on these platforms.

Can we check in advance how the Action will behave? In particular, I'm wondering if the different os configurations provide all necessary tools (e.g., compilers) to run both C and Fortran benchmarks, thus ensuring full coverage. If not, how do we configure them?

See https://github.com/codee-com/open-catalog/actions/runs/9316409557, please!

Can we check in advance how the Action will behave? In particular, I'm wondering if the different os configurations provide all necessary tools (e.g., compilers) to run both C and Fortran benchmarks, thus ensuring full coverage. If not, how do we configure them?

See https://github.com/codee-com/open-catalog/actions/runs/9316409557, please!

Sorry for the oversight :sweat:
Looks great :)


Release 3.0.0 rc.0

This merges current main into release-3.0 without conflicts (it can fast-forward) and adds a single commit to bump the release version to v3.0.0-rc.0 and tag it accordingly, see 3f8e019c1a0011f41c8b557ae18804041f3ce219.
I expect the UI builds for the old react-ui to fail, that is expected as discussed in #15223.

@juliusv @Nexucis Seems like on the release branch we can't do the same as we did in #15223.

@jan--f is it expected there are that much changes just for a release ? It looks like the branch release is not up to date

Yes the release branch is not up to date.  It was branched to create a beta, then work carried on in main.
Personally I don't think that is a huge deal.
Let me try creating a PR which purely updates release-3.0.

Thanks everyone, This is rebase on release-3.0 and I updated web/ui/react-app/package[-lock].json to depend on the codemirror-promql 0.55.0 module. Iiuc this is the proposed solution to the react builds.
If that is correct I only need to retag this.

Tags are added.

I think this is a mistake - tags should be added after this PR merges into release-3.0.

Tags are added.

I think this is a mistake - tags should be added after this PR merges into release-3.0.

The tagged commits are still on my branch, but the prometheus repo knows about them. So merging this will add the tags to the release branch.

/prombench v2.55.0

/prombench v2.55.0

Pretty close to previous version; I'd say this is good to go:

/prombench cancel


import: Use default description for imported realms.

The current description adds an extra step in the import process, since the admin has to go change the description to something that can be user facing.

Hmm, I'm not sure about this.  I think it's valuable as sorta a confirmation that the import process worked for folks in a self-hosted site to see that description.  What if we just changed the text to also include a link to where to edit itself?  I think that should be pretty easy with a relative markdown link (basically something like [Organization admins can edit this profile](#organization/organization-profile)).  Might actually be a good idea to add that sort of link to the default homepage, too?

I think it's a bit dangerous to have user-facing things that look broken unless fixed. It also adds an extra step in the instructions for importing into zulipchat; I feel like I have to explicitly warn the admin that they have to change it.
In the normal (non-import) case: the admin never really sees that page -- they create an account, and then are forever logged in. So if we want to get them to change it we may have to emphasize it somewhere else.

OK, maybe we don't want that for the non-import case, but for the import case, the admin's very next step when we email them is going to be visiting that page, and the point of adding a link there is that we then don't need to warn admins, because they'll see it right there.
(It's also worth noting that many organizations will need/want to edit their organization icon and name while they're at it anyway before asking folks to join, especially for an imported organization where they already have a userbase)

I'm not sure the little bit of extra confirmation is worth it, especially since we'll have their realm name, possibly their realm icon, and a working page at their string_id.zulipchat.com.
I think the experience of trying to edit it also won't be great, since you click on "edit", and then you're redirected back to the same page (/login) with the only thing changed being a subtle change to the URL. Even if you notice the change to the URL, the first thing you're going to want to do when you get to your imported realm is not to write the org description, but to click around and check that all your stuff did indeed make it over.
So my preference here would be to save it for the "set up your organization as an admin" guide we send them, which also tells them to review their "who can join" settings, etc.


Fix issue when switching between FileSystem and other editor docks

Fix #5384.
@akien-mga sorry about the other PR, I should've tested more thoroughly, but didn't know about this vertical split special case.
@reduz, now I tested with and without the vertical split, and it worked fine. Changing minimum size to Size2(0,150) also solved the problem, but I think this is a better way to address the issue, as if anyone should change the minimum size again in the future, it won't cause a regression.
Any other special cases you may find useful for me to test before merging?

Works fine.


How to sync the micro-ROS timestamp with the ROS2 timestamp (from the agent)

I would like to know what to do to  sync the micro-ROS timestamp with the ROS2 timestamp (from the agent). I saw in https://github.com/micro-ROS/rmw-microxrcedds/issues/116 that I can use the function "rmw_uros_sync_session". I tryed to use this funcion with the stm32cubemx_utils, both with galaxy and foxy APIs, and it did not work (the timestamp was not sync but I did not receive an error from the function "rmw_uros_sync_session"). I realized that the function rmw_uros_sync_session seems diferente in my system than the one presented in https://github.com/micro-ROS/rmw-microxrcedds/issues/116, since it has only one parameter "rmw_ret_t rmw_uros_sync_session( const int timeout_ms);", while in the example, it receive two parameters "rmw_ret_t rmw_uros_sync_session( int64_t * result, const int timeout_ms);". How can I solve my problem? Regards

The rmw_uros_sync_session function is supposed to only have one parameter, it was modified from the one present on that PR.
You can check this example: link, and the available documentation: link, link.
Also, if rmw_uros_sync_session returned without errors, then the rmw_uros_epoch functions should return the actual epoch time.
How are you checking the timestamp?

Hi Acuadros95, thank you for your support. I did a test getting the time with rmw_uros_epoch_nanos(); and it worked as expected. So I discovered that my problem was that I was getting the time with clock_gettime(CLOCK_REALTIME, &ts);, I just substitute it by rmw_uros_epoch_nanos(); and it worked. Thank you very much!

Glad to help!

hi @Acuadros95 , I use platform io and ros2 humble, when I run example code " https://github.com/micro-ROS/micro-ROS-demos/blob/galactic/rclc/epoch_synchronization/main.c " , I have error " collect2: error: ld returned 1 exit status
*** [.pio/build/esp32doit-devkit-v1/firmware.elf] Error 1 ". How can I fix it, this is my .ini file " [env:esp32doit-devkit-v1]
platform =<EMAIL_ADDRESS>board = esp32doit-devkit-v1
framework = arduino
monitor_speed = 115200
monitor_rts = 0
monitor_dtr = 0
monitor_port = /dev/ttyUSB0
board_microros_distro = humble
board_microros_transport = wifi
lib_deps =
https://github.com/micro-ROS/micro_ros_platformio
"


Contract Calls

Goal: As a developer, I must be able to call already deployed on Hedera SCS contracts
Prerequisite: Deployment
Description: hethers.js must change the existing Contract Meta-class of ethers. Contract Meta-Class is class generated during runtime and is a wrapper of the contract's ABI. It allows for 3 types of calls to be executed against contracts (Static Calls, Normal Calls, Estimation/Simulation Calls). The described user story focuses only on the normal calls type. Notable changes/unsupported APIs:

The underlying implementation of TX submission for every METHOD_NAME generated during runtime must be replaced with submitting TX to the Hedera provider, signed by the hedera signer/wallet
TransactionResponse → The type must be changed to comply with Hedera Transaction types (f.e not having nonce field)
Setting gasPrice → Will not be supported at least initially
nonce → Will not be supported, since there is no account nonce in Hedera
wait() method (used to wait for TX to be mined) → Will be querying the mirror node and waiting for the transaction to be "mined".

This story has been moved to the hethers.js repo


Bugfix: MultiGrid renders extra cells for scrollbar spacing, but for the wrong scroll direction

Background:
MultiGrid occasionally renders extra cells (sometimes as rows, sometimes as columns) to create extra room for scrollbars.
Bug:
Even without a horizontal scroll bar present, MultiGrid is rendering an extra row, which creates an awkward extra space at the bottom of the page.
Steps to Reproduce:
On the official MultiGrid Example

Set the column count to an amount that doesn't require horizontal scrolling on your screen (I had to break out React DevTools to adjust this, since it's not adjustable via the UI).
On the pinned columns, scroll down as far as you can go.
See extra space at the bottom.

(I added a red background to the empty cells)
What's Happening:
It turns out _renderBottomLeftGrid is looking at showVerticalScrollbar when determining whether it should create an extra row. This is incorrect, because the extra row should account for the horizontal scrollbar, not the vertical one (this makes sense: horizontal scrolling creates a scrollbar at the bottom of the table). Similarly, _renderTopRightGrid is looking at showHorizontalScrollbar when adding an extra column, whereas it should be looking at showVerticalScrollbar.
Solution:
This is a fairly simple fix; I just swapped out which boolean each grid is looking at to determine whether it needs an extra row/column.
Contribution Checklist:

[x] The existing test suites (npm test) all pass
[ ] For any new features or bug fixes, both positive and negative test cases have been added
[ ] For any new features, documentation has been added
[ ] For any documentation changes, the text has been proofread and is clear to both experienced users and beginners.
[x] Format your code with prettier (yarn run prettier).
[x] Run the Flow typechecks (yarn run typecheck).

@adam-stover @rubencodes hi, any progress on this pr?

@vova42matters I’d love to get it merged, but I think we need someone with proper permissions to review + approve!

Please, merge it. It seems not so much to review.

I noticed there's an older PR from Feb 25, 2019 that also attempts to fix this problem. Given the lack of response from package maintainers there, it seems like there's no interest in getting this fix merged.

@bvaughn / @adam-stover What's the process to get this merged in? Would love to see this bug fixed 🐞


Expand

Add more small and Simple games

I would like to work on it. I will add some more games like tic tac toe etc, it will take some time though.

No problem make sure they are on another page but linked with the score board

Attach Screenshot of the changes in the pull request.


Speed up StableTopologicalSort

Fixes https://github.com/dominikbraun/graph/issues/129
The biggest savings come from just calling sort less often. Instead of in the inner-most loop, we call it after processing the whole map of predecessors.
The other portion is just not appending duplicate items to the queue. I do this in a simple way by maintaining a set of queued things (similar to the visited set).
I think the "proper" way to fix this would be to use a sorted list for queue instead of sorting after every pass, but I'm too lazy to implement that, and I don't think it's part of the go stdlib.
For our use case, on my machine, StableTopologicalSort took:
Before: 230.00s
After:    0.03s

So about 8000x faster.
We were doing ~50 billion string comparisons before, and we're doing 242642 now. I think that's still too high, but I'm willing to call that fine.

I am really glad @jonjohnsonjr hopped onto this, and I appreciate it as well. He is one superstar, especially in performance related areas (I think he enjoys it too 😄 ).

Hooray! I will run it as well. Will this be v0.22.2 or in v0.23.0?

My use case collapsed from 4-6 mins down to 37 seconds. @jonjohnsonjr is 🧙♂
Thanks to both of you.

This change has been released in v0.22.2.