Fix getTotalCount() method

Remove nbHits usage because this is not reliable information.
The Meili team is aware of this. Here are the different issues and comments about it to explain why it's confusing, and why we should not use it:

https://github.com/meilisearch/MeiliSearch/issues/1120
https://github.com/meilisearch/documentation/issues/561
https://github.com/meilisearch/meilisearch-php/issues/119#issuecomment-732908568

TLDR;
nbHits is not reliable for pagination because can be exhaustive or not, depending on the value of exhaustiveNbHits that MeiliSearch returns which is always false for the moment.
We are sorry for this. We all hope this confusion will be fixed asap in MeiliSearch.
⚠ The linter error in the CI will be fixed with #82

bors merge

bors merge


[rippled keeps server_status:disconnected] (Version: [1.12.0])

Issue Description

rippled is not synching forever.
Steps to Reproduce

sudo systemctl start rippled.service
Expected Result

rippled synchronizes properly.
Actual Result

when I typed sudo rippled server_info, I found server_state: disconnected and there's no additional logs that's being added in real-time in /var/log/rippled/debug.log
Environment

OS: CentOS Linux release 7.9.2009 (Core)
rippled version: v1.12.0
Supporting Files

sudo rippled server_info
[irteamsu@LNELIBNODE1509 ripple]$ sudo rippled server_info
Loading: "/etc/opt/ripple/rippled.cfg"
2023-Oct-19 07:58:20.351256291 UTC HTTPClient:NFO Connecting to <IP_ADDRESS>:5005

{
   "result" : {
      "info" : {
         "build_version" : "1.12.0",
         "closed_ledger" : {
            "age" : 430,
            "base_fee_xrp" : 1e-05,
            "hash" : "D6E5C532F475DFDCFE4FA7E93AAE8D5A961A8A8C6ECB13E5F784332A28724907",
            "reserve_base_xrp" : 10,
            "reserve_inc_xrp" : 2,
            "seq" : 2
         },
         "complete_ledgers" : "empty",
         "hostid" : "LNELIBNODE1509",
         "io_latency_ms" : 1,
         "jq_trans_overflow" : "0",
         "last_close" : {
            "converge_time_s" : 0,
            "proposers" : 0
         },
         "load" : {
            "job_types" : [
               {
                  "in_progress" : 1,
                  "job_type" : "clientRPC"
               }
            ],
            "threads" : 14
         },
         "load_factor" : 1,
         "network_ledger" : "waiting",
         "node_size" : "huge",
         "peer_disconnects" : "0",
         "peer_disconnects_resources" : "0",
         "peers" : 0,
         "ports" : [
            {
               "port" : "5005",
               "protocol" : [ "http" ]
            },
            {
               "port" : "51235",
               "protocol" : [ "peer" ]
            },
            {
               "port" : "6006",
               "protocol" : [ "ws" ]
            }
         ],
         "pubkey_node" : "n9JbZCeCwMinZkuKFTWgXFaEmMcT12Wdtb1jsLru3WumwHQSUnht",
         "pubkey_validator" : "none",
         "published_ledger" : "none",
         "server_state" : "disconnected",
         "server_state_duration_us" : "431857943",
         "state_accounting" : {
            "connected" : {
               "duration_us" : "1000825",
               "transitions" : "1"
            },
            "disconnected" : {
               "duration_us" : "431952490",
               "transitions" : "2"
            },
            "full" : {
               "duration_us" : "0",
               "transitions" : "0"
            },
            "syncing" : {
               "duration_us" : "0",
               "transitions" : "0"
            },
            "tracking" : {
               "duration_us" : "0",
               "transitions" : "0"
            }
         },
         "time" : "2023-Oct-19 07:58:20.351744 UTC",
         "uptime" : 432,
         "validation_quorum" :<PHONE_NUMBER>,
         "validator_list" : {
            "count" : 2,
            "expiration" : "2023-Oct-24 00:00:00.000000000 UTC",
            "status" : "active"
         }
      },
      "status" : "success"
   }
}

/var/log/rippled/debug.log
2023-Oct-19 07:51:07.409987623 UTC Application:DBG startUp: 5
2023-Oct-19 07:51:07.440685883 UTC OrderBookDB:WRN Eliding full order book update: no ledger
2023-Oct-19 07:51:07.441025559 UTC ValidatorList:DBG Loading configured trusted validator list publisher keys
2023-Oct-19 07:51:07.441043647 UTC ValidatorList:WRN Duplicate validator list publisher key: ED2677ABFFD1B33AC6FBC3062B71F1E8397C1505E1C42C64D11AD1B28FF73F4734
2023-Oct-19 07:51:07.441052804 UTC ValidatorList:DBG Loaded 2 keys
2023-Oct-19 07:51:07.441059832 UTC ValidatorList:DBG Loading configured validator keys
2023-Oct-19 07:51:07.441066643 UTC ValidatorList:DBG Loaded 0 entries
2023-Oct-19 07:51:07.441074293 UTC ValidatorSite:DBG Loading configured validator list sites
2023-Oct-19 07:51:07.441197501 UTC ValidatorSite:DBG Loaded 3 sites
2023-Oct-19 07:51:07.492984113 UTC NetworkOPs:NFO Consensus time for #3 with LCL D6E5C532F475DFDCFE4FA7E93AAE8D5A961A8A8C6ECB13E5F784332A28724907
2023-Oct-19 07:51:07.493014093 UTC ValidatorList:DBG 0  of 0 listed validators eligible for inclusion in the trusted set
2023-Oct-19 07:51:07.493024284 UTC ValidatorList:DBG Using quorum of<PHONE_NUMBER>3709551615 for new set of 0 trusted validators (0 added, 0 removed)
2023-Oct-19 07:51:07.493031432 UTC ValidatorList:WRN New quorum of<PHONE_NUMBER>3709551615 exceeds the number of trusted validators (0)
2023-Oct-19 07:51:07.493040309 UTC LedgerMaster:DBG No validated ledger
2023-Oct-19 07:51:07.493047877 UTC NetworkOPs:NFO STATE->connected
2023-Oct-19 07:51:07.493058846 UTC LedgerConsensus:NFO Entering consensus process, watching, synced=no
2023-Oct-19 07:51:07.493069813 UTC LedgerConsensus:DBG transitioned to ConsensusPhase::open
2023-Oct-19 07:51:07.493077910 UTC LedgerConsensus:NFO Consensus mode change before=observing, after=observing
2023-Oct-19 07:51:07.493086072 UTC NetworkOPs:DBG Initiating consensus engine
2023-Oct-19 07:51:07.493448928 UTC Server:NFO Opened 'port_rpc_admin_local' (ip=<IP_ADDRESS>:5005, admin nets:<IP_ADDRESS>/0, ::/0, http)
2023-Oct-19 07:51:07.493497357 UTC Server:NFO Opened 'port_peer' (ip=<IP_ADDRESS>:51235, peer)
2023-Oct-19 07:51:07.493543234 UTC Server:NFO Opened 'port_ws_admin_local' (ip=<IP_ADDRESS>:6006, admin nets:<IP_ADDRESS>/32, ws)
2023-Oct-19 07:51:08.493879093 UTC NetworkOPs:WRN Node count (0) has fallen below required minimum (1).

/opt/ripple/etc/rippled.cfg
[server]
port_rpc_admin_local
port_peer
port_ws_admin_local

[port_rpc_admin_local]
port = 5005
ip = <IP_ADDRESS>
admin = <IP_ADDRESS>
protocol = http

[port_peer]
port = 51235
ip = <IP_ADDRESS>
protocol = peer

[port_ws_admin_local]
port = 6006
ip = <IP_ADDRESS>
admin = <IP_ADDRESS>
protocol = ws

[node_size]
huge

[node_db]
type=NuDB
path=/var/lib/rippled/db/nudb
open_files=2000
filter_bits=12
cache_mb=256
file_size_mb=8
file_size_mult=2
online_delete=51200
advisory_delete=0

[ssl_verify]
0
[validator_list_sites]
https://vl.ripple.com

[validator_list_keys]
ED2677ABFFD1B33AC6FBC3062B71F1E8397C1505E1C42C64D11AD1B28FF73F4734

[sntp_servers]
time.windows.com
time.apple.com
time.nist.gov
pool.ntp.org

[validators_file]
validators.txt

[rpc_startup]
{ "command": "log_level", "severity": "warning" }

[database_path]
/var/lib/rippled/db

[debug_logfile]
/var/log/rippled/debug.log

/opt/ripple/etc/validators.txt
[validator_list_sites]
https://vl.ripple.com
https://vl.xrplf.org

[validator_list_keys]
ED2677ABFFD1B33AC6FBC3062B71F1E8397C1505E1C42C64D11AD1B28FF73F4734
ED45D1840EE724BE327ABE9146503D5848EFD5F38B6D5FEDE71E80ACCE5E6E738B

See https://xrpl.org/server-doesnt-sync.html
What hardware are you running on?

@intelliot
I don't think my hardware is the problem because I'm running rippled in different machines with the same hardware.
It occurred when I tried to install a new rippled (1.12.0), other different machines running 1.11.0 are working fine.
CPU: Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz
Memory: 32GB
Disk: 2TB

I guess the node can't get any peer information.
$ rippled peers
Loading: "/etc/opt/ripple/rippled.cfg"
2023-Oct-24 02:34:30.852130053 UTC HTTPClient:NFO Connecting to <IP_ADDRESS>:5005

{
   "result" : {
      "cluster" : {},
      "peers" : null,
      "status" : "success"
   }
}

Sounds like a connectivity issue. Can you try downgrading the rippled binary on the problematic machine to 1.11.0, and see if it syncs successfully? If it does not, then there is a problem with that machine, not rippled 1.12.0.

I tried downgrading to the original version (1.11.0) but it didn't work out, either.
And then I reboot the machine, tried 1.12.0 and 1.11.0 but all failed.
/var/log/rippled/debug.log is not showing any additional/helpful logs to track this issue,
So is there a way to leave a log what step the rippled is stopping on?
Like modifying some files in rippled?

@sj602
First I noticed that you have duplicate entries for validator_list_keys and validator_list_sites. I don't think it matters but I would use the validators_file and remove those from your config or you're going to forget which one is the correct setting.
Second you can use debug trace to get a better output.

@dangell7
I modified it. Thanks! but it didn't solve it.
How can I debug trace? I'd appreciate it if you give me any documents for it.

Oh, I'm not sure this is related to the issue but one thing I tried is to capture all network packets transmitted to the port 5005 like below.
[irteamsu@LNELIBNODE1509 ripple]$ sudo /sbin/tcpdump -i any -s 0 'host <IP_ADDRESS> and port 5005'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes

but I guess there's no single packet that's being transmitted

Just to confirm, you're running the same config on all the servers right?
I dont have any documents on it but if you could put it into a gist and paste it here I can try to help.

where is your ips or ips_fixed stanza?

FYI.
my install script: here
my config: here

I guess my node can not get any peer information
[irteamsu@LNELIBNODE1509 ~]$ rippled peers
Loading: "/etc/opt/ripple/rippled.cfg"
2023-Oct-26 03:59:27.456110923 UTC HTTPClient:NFO Connecting to <IP_ADDRESS>:5005

{
   "result" : {
      "cluster" : {},
      "peers" : null,
      "status" : "success"
   }
}

I changed the log_level from warning to trace, and then I found this in /var/log/rippled/debug.log.
<IP_ADDRESS>:51235 seems like a peer address and it throws Connection reset by peer.
...
2023-Oct-26 06:24:28.557590197 UTC JobQueue:TRC Doing heartbeatjob
2023-Oct-26 06:24:29.557643361 UTC JobQueue:DBG addRefCountedJob : Adding job : NetOPs.heartbeat : 34
2023-Oct-26 06:24:29.557676760 UTC JobQueue:TRC Doing heartbeatjob
2023-Oct-26 06:24:30.557727672 UTC JobQueue:DBG addRefCountedJob : Adding job : NetOPs.heartbeat : 34
2023-Oct-26 06:24:30.557762832 UTC JobQueue:TRC Doing heartbeatjob
2023-Oct-26 06:24:30.558912876 UTC PeerFinder:DBG Logic connect     1 boot address
2023-Oct-26 06:24:30.558934113 UTC Resource:DBG New outbound endpoint <IP_ADDRESS>:51235
2023-Oct-26 06:24:30.558946476 UTC PeerFinder:DBG Logic connect     <IP_ADDRESS>:51235
2023-Oct-26 06:24:30.558986105 UTC Peer:DBG [183] Connect <IP_ADDRESS>:51235
2023-Oct-26 06:24:30.804778831 UTC Peer:TRC [183] onConnect
2023-Oct-26 06:24:31.052363809 UTC Peer:DBG [183] onHandshake: Connection reset by peer
2023-Oct-26 06:24:31.052388839 UTC Peer:DBG [183] Closed
2023-Oct-26 06:24:31.052410712 UTC PeerFinder:DBG Bootcache failed  <IP_ADDRESS>:51235 with 6 attempts
2023-Oct-26 06:24:31.052421933 UTC Peer:TRC [183] ~ConnectAttempt
2023-Oct-26 06:24:31.052444542 UTC Resource:DBG Inactive <IP_ADDRESS>:51235
2023-Oct-26 06:24:31.557800320 UTC JobQueue:DBG addRefCountedJob : Adding job : NetOPs.heartbeat : 34
2023-Oct-26 06:24:31.557829841 UTC JobQueue:TRC Doing heartbeatjob
2023-Oct-26 06:24:32.557862709 UTC JobQueue:DBG addRefCountedJob : Adding job : NetOPs.heartbeat : 34
2023-Oct-26 06:24:32.557892630 UTC JobQueue:TRC Doing heartbeatjob

<IP_ADDRESS> is one of the IPs in the r.ripple.com default bootstrap pool.
If you're not able to connect to it, there are only three causes I can think of:

A networking problem.
A configuration error on your server that is causing the remote server to reject the connection.
A proxy server or something similar that is dropping the connection.

Fortunately, the peer port health method is available on that server. See if you can connect to it from the command line
curl -k https://<IP_ADDRESS>:51235/health

You should get back {"info":{}}. If not, post the result here.

@ximinez
I got..
[irteamsu@LNELIBNODE1509 ~]$ curl -k https://<IP_ADDRESS>:51235/health
curl: (35) TCP connection reset by peer

If you can't reach r.ripple.com then you can add some other reachable nodes in [ips] or [ips_fixed]. This can even include other servers that you are running, as long as they are on the same network (Mainnet). They do not need to be running the same version of rippled.

@intelliot
I guess it's related to our ACL. I expect it to be working OK if I add peer node's ips and ports but I think there is some possibility that their IPs and ports will change in the future.
I'll report the result sometime soon.

After adding a new outbound ACL(my node -> *:51235), it's working fine. As I know, there were no updates on any ACL things in this v1.12.0 update so I don't why it made a problem all of a sudden.

Is there any newly added peer while the network is upgrading v1.11.0 -> v1.12.0?

Not that I know of.


Add CSS Variable File to Maintain Theme Across all CSS Files

Pull Request Template
Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.
Fixes #9
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Additional Context (Please include any Screenshots/gifs if relevant)
...
Checklist:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have checked my code and corrected any misspellings
[x] I have tagged the reviewers in a comment below incase my pull request is ready for a review

@StevenKourani @locks645
Let me know what you think.


Add CORS middleware

When debugging, allow Access-Control-Allow-Origin header from all origins. When not running in debug mode: only allow the configured domain name.
Also add the following headers:
Access-Control-Max-Age=86400
Access-Control-Allow-Methods=POST, GET, OPTIONS, PUT, DELETE, UPDATE
Access-Control-Allow-Headers=Origin, Content-Type, Content-Length, Accept-Encoding, X-CSRF-Token, Authorization
Access-Control-Expose-Headers=Content-Length

Fixed with commit 1b0f50a


Test Grid Layout

Testing: #50853 #79614

[x] macOS @isidorn
[ ] Linux @RMacfarlane
[x] Windows @alexr00

Complexity: 5
I've marked this issue as high complexity as I believe it should have strenuous testing to uncover any potential regressions between the new and old layout.
The grid layout is enabled by default and has been for the entire iteration. However, a perf improvement PR was merged just before endgame regarding the initial (re)construction of the workbench.
How to verify
Ensure that you haven't disabled the grid layout setting.

Play with the visibility of all parts (including the editor).
Play with the position of all parts (panel and sidebar).
Try native and custom titlebar experiences.
Please test a clean install without any cached workbench.
Try setting up strange layouts, closing the window, and re-opening the workspace and verify the layout is restored as expected.
Use the commands and mouse snapping behavior to hide and show parts.
Work with multiple windows and workspaces.

What is cached with the layout on a workspace level and application level can be confusing when testing. Please always verify that the behavior has changed from stable when reporting a new issue. It's a good idea to use the same settings and document your steps along the way for longer repros.

I measured the startup performance of the grid with the built vscode and I could not see any measurable perfomance degradation compared to the old layouting technique. 1053.6ms for the new 1053.4 for old. So startup performance seems fine on my machine. Nice work @sbatten
fyi @jrieken

@isidorn Not sure what those numbers are? The perf bot still didn't show a real difference between today and yesterday: https://vscodeteam.slack.com/archives/C3NBSM7K3/p1566914782011400

@jrieken Those number are workbench ready.
Hmm between yesterday and today should be a noticable improvment, at least in theory.

So, you measuremented was enable/disable grid layout, right? Since the perf bot measures everything there might be something else that's now slower...

@jrieken yes. Since I can enable/disable it via the setting workbench.useExperimentalGridLayout
However I was comparing Grid layout to no grid layout.
The bot is comparing Grid from today from grid from tomorrow.
So we measure different things.

Yeah, we had lost 50ms when enabling the grid but during the last days the perf bot had some fast runs (that's why I wondered when the changes have been merged). I believe @isidorn when he measured locally using the toggle-setting approach. It just seems that the perf bot lost time somewhere else... There was a pending update (which usually makes everything run slower) which is now installed


Minting dapp not running

General information

Description
Value

Project version
0.0.0

Operating system and version
MacOs Big Sur version 11.5.2

NodeJS version
16.13.2

NPM version
8.1.2

Yarn version
1.22.15

Truffle version
5.5.27

Describe the bug
I've got this error while running project with yarn dev-server command:
error Could not write file "/Users/jsinamaleki/Documents/project/nft-erc721-collection/minting-dapp/yarn-error.log": "ENOSPC: no space left on device, write"
error An unexpected error occurred: "ENOSPC: no space left on device, mkdir '/var/folders/7k/_ykr7jx94pd8ph99j7ltm4m00000gn/T/yarn--1660902489848-0.3359912957282838'".
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Additional context
also, I've got this error while installing packages with yarn

it was related to my storage.


support for influxdb 2.0

hi,please can u add support for influxdb api v2?

Can you share how far you've gotten modifying example_influxdb.py to get it to work?

I would prefer to storage not the whole transfer but some parsed important values. I will try to do it. This approach is also valid for openhab persistence.

I have modified the example script for influxdb api v2 (see attachment) according to this documentation: https://www.influxdata.com/blog/getting-started-with-python-and-influxdb-v2-0/
Only thing you have do to is to import this library:
pip install influxdb-client
Example call:
./example_influxdbV2.py --influx_token <your_token> influx_org <your_org> --influx_bucket <your_bucket> --influx_url http://<your_ip>:8086 <your_inverter_ip> <your_inverter_port>
example_influxdbV2.py.zip


:ambulance: Fixed missing items issue in seasons endpoint

I've refactored the getAiredBetween method to do a query of "if premiered field  not null query by premiered, otherwise fallback to aired.from and aired.to". This has fixed the issue in my test environment, where I tested whether "Frieren" is the top of the Fall 2023 season, and whether it's not missing.

I've tested this again, it works on my machine. :monkey:


Content missing in some chapters

Content is missing in some chapters which should be present in boxes. Is there content already present that we can add here?
Screenshots:

These content boxes are currently reserved for future GIFS and diagrams!

I see. Please let me know if I can help with these.👍

Yeah I'm looking to see if I can convince a graphic designer to help us out and produce diagrams and images for us... stay tuned!

Hey @Prakhar-Agarwal-byte I can help you out in this case. Let me know what type of design you want for putting here.
I can do designing as well as coding. Good in both :)

I will close this in favour of #313.


Move buildpacks task installs to the examples

Long term we probably want to vendor the tasks, but this should
be a good fix for some of the timeouts we're seeing in our tests
I think this should avoid the timeouts?

Need to fix a couple of things I'm realizing


更新時の certbot 動作モードを --nginx か --webroot に

初回取得時に webroot モード が転けるため、standalone モードで取得した。
standalone モードだと nginx 停止 → certbot の WEB サーバ起動 → nginx 再起動 となる。
デメリットの方が多そうなので切り替える。
テストサーバの方で証明書の再取得など試して、設定を出す。
本番サーバの証明書期限は 22年6月30日。

certbot ロールの変数で、更新時の実行コマンドを指定できる。
certbot_auto_renew_options: "--quiet --no-self-upgrade"

オプションで  --webroot か --nginx を指定しておけばよさそう。
geerlingguy/ansible-role-certbot: Ansible Role - Certbot (for Let's Encrypt)

nginx オプション入れて実行すると転ける。
同じようなエラーが Let's Encrypt のコミュニティにあった。

 See "systemctl status nginx.service" and "journalctl -xe" for details.
1 renew failure(s), 0 parse failure(s)
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

76b4292a0e5b9a729aaac6d45b2af85757e6d2a8 pre post hook フォルダを削除したところ、sudo certbot renew --nginx --dry-run が実行できたので、一旦完了とする。


remove and to many events

when i use 5-day and hourly wether, the admin say that there are too many events in the last 3 seconds. And when i remove the hourly weather its all fine, but then the objects are still there

@MeisterTR   The second is true: I do not remove any object when configuration is changed. But you can remove it manually. For the first: do you have any log to show the behavior? Where do you see that message from admin?


whether consider supporting umd？

whether consider supporting umd by webpack？

Porting the Scribe codebase to ES6 modules was a pretty straightforward step for us — done by hand in under an hour. Then the modules can be converted to UMD with Babel if you need this specific format. I suggest just forking the repo and doing it yourself.

#83


Indication missing when adding a new receiver via QR code to address book without camera access permission

Bug Description
When adding a new receiver to the address book via the QR code functionality, you will get a black screen without any indication of what is wrong, if the app does not have camera access permissions.
Issue should be fixed similarly to https://github.com/Concordium/concordium-reference-wallet-ios/issues/24 with indicating the cause and guiding the user to the settings.
Steps to Reproduce

make sure the Concordium app does not have camera access permission
go to address book
add new receiver via QR code functionality

Expected Result
The user is told that the app needs camera access and is guided to the settings.
Actual Result
Black screen that does not scan the QR code.
Versions

iOS 14.7
iPhone 11
Concordium app 1.0.18

I was able to reproduce this issue by following the description.

Disable camera permissions
Start application
Try to scan address

Versions

Software Version: 3.0.0 (40)
OS:14.8.1
Browser
Mobile device: iPhone SE

Issue was fixed but not on all pages where capability is provided.
If user selects:
More -> Address Book -> + QRCodeButton
Issue is persisted in there.
Wallet version: 3.0.0 (42)
iOS: 15.4.1
Device: iPhone SE

Verified.
Wallet version: 3.0.0 (44)
iOS: 15.5
Device: iPhone SE


img class bug

Challenge Add Borders Around your Elements has an issue.
User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
 Your code is incorrect and is preventing you from passing the challenge. Please use the help chat rooms for guidance.
This is a standard message notifying you that this issue seems to be a request for help. Instead of asking for help here, please click the "help" button on the challenge on Free Code Camp, which will take you to the help chatroom for that specific challenge. You can also view our full list of official chatrooms.
If you think I'm wrong in closing this issue, please reopen it and add further clarification. Thank you, and happy coding!


Update Documents

Main Changes

Updated SampleDataUtil so the sample data is more realistic, allowing for Ui.png to display realistic information. Amended test cases in SampleDataUtilTest accordingly.
Added internbuddy.json for Appendix C in User Guide.
Updated index.md and README with latest InternBuddy information.
Amended acknowledgments to explain what we used AB4 and Please Hire Us for.
Added to Eugene's PPP.

Issues
This PR closes #109.

Nice work! Looks good to merge.


cmd/osm-controller: write private key to CA bundle secret

Description:
The private key for the CA bundle secret was not being written
to, because of which restarting a pod (not recreating the deployment)
results in the controller not starting up fine when it loads
the root certificate from the CA bundle secret.
Resolves #1742

Affected area:

New Functionality      [ ]
Documentation          [ ]
Install                [ ]
Control Plane          [ ]
CLI Tool               [ ]
Certificate Management [X]
Networking             [ ]
Metrics                [ ]
SMI Policy             [ ]
Security               [ ]
Tests                  [ ]
CI System              [ ]
Performance            [ ]
Other                  [ ]

Please answer the following questions with yes/no.

Does this change contain code from or inspired by another project? If so, did you notify the maintainers and provide attribution?
No

Codecov Report

Merging #1816 into main will increase coverage by 14.57%.
The diff coverage is 52.40%.

@@             Coverage Diff             @@
##             main    #1816       +/-   ##
===========================================
+ Coverage   44.39%   58.96%   +14.57%
===========================================
  Files         111      125       +14
  Lines        4690     5169      +479
===========================================
+ Hits         2082     3048      +966
+ Misses       2608     2118      -490
- Partials        0        3        +3

Impacted Files
Coverage Δ

ci/cmd/maestro.go
8.04% <0.00%> (-2.67%)
:arrow_down:

cmd/cli/dashboard.go
0.00% <ø> (ø)

cmd/cli/env.go
0.00% <0.00%> (ø)

cmd/cli/mesh.go
0.00% <0.00%> (ø)

cmd/cli/namespace.go
0.00% <0.00%> (ø)

cmd/cli/namespace_list.go
35.55% <0.00%> (-1.95%)
:arrow_down:

cmd/cli/osm.go
0.00% <0.00%> (ø)

cmd/cli/version.go
0.00% <0.00%> (ø)

pkg/catalog/mock_catalog.go
0.00% <0.00%> (ø)

pkg/certificate/types.go
0.00% <ø> (ø)

... and 190 more

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 9a51c5b...c3c9e53. Read the comment docs.


[ARTEMIS-2022] Create count messages 'group by' this property filter

Create a new function this is responsibility count messages determined property filter, e return one object in json, where properties to object is value of property and this value is amount messages.
Actually in the project have only method count messages of determinate filter, but no has method group messages for respective property.
Issue: https://issues.apache.org/jira/browse/ARTEMIS-2022

This should probably filter using the selectors logic, rather than some seperate logic, so the fiktering expectations are the same.

@ArthurFritz i sent your branch a PR with a number of improvements on this, see here: https://github.com/ArthurFritz/activemq-artemis/pull/1

@ArthurFritz as your branch just had the changes i suggested, but also an additonal but un-needed extra merge commit, i merged from the branch i had of yours, https://github.com/apache/activemq-artemis/pull/2243.
Could you close this?

Ok, thanks.

@ArthurFritz thanks for the contribution :)

@michaelandrepearce You're welcome.
Would you know the expected date of version 2.6.3 ?

This is a feature not a bug fix, 2.6.3 is a bug fix release only. This would be in next feature release 2.7.0

Cool, is there an expected date for 2.7.0?

Not atm afaik, as efforts are for bug fix release atm.


Create Python bindings for C API

Connect the C API from #2 to Python.

Done on or before 09c7a4e4b3596ebc502214b65f0ea165221a3d2a.


Error

Whenever I run the npm the below error message appears
><EMAIL_ADDRESS>start
> node src/index.mjs run

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃                                                                                ┃
┃   @open-wa/wa-automate                                                                            ┃
┃    💬 🤖 The most reliable NodeJS whatsapp library for chatbots with advanced features.           ┃
┃   Version: 2.1.6                                                                                ┃
┃   Check out the latest changes: https://github.com/open-wa/wa-automate-nodejs#latest-changes      ┃
┃                                                                                ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
You can also authenticate the session at: http://localhost:7001
- Initializing WA
/Users/ahmadbaba/Desktop/whatsappchatgpt/wpp-chatgpt/node_modules/puppeteer-core/lib/cjs/puppeteer/util/assert.js:28
        throw new Error(message);
              ^

Error: An `executablePath` or `channel` must be specified for `puppeteer-core`
    at assert (/Users/ahmadbaba/Desktop/whatsappchatgpt/wpp-chatgpt/node_modules/puppeteer-core/lib/cjs/puppeteer/util/assert.js:28:15)
    at ChromeLauncher.launch (/Users/ahmadbaba/Desktop/whatsappchatgpt/wpp-chatgpt/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ChromeLauncher.js:92:36)
    at async PuppeteerExtra.launch (/Users/ahmadbaba/Desktop/whatsappchatgpt/wpp-chatgpt/node_modules/puppeteer-extra/dist/index.cjs.js:128:25)

Node.js v18.16.0

Hello, did you fixed this?


use java lib instead of external sh commands to do recursive hard linking

Linux has restriction on shell argument length, it's likely the command to do hard linking project dir of a lot of subdir and files will exceed the restriction, causing flow setup failure. The fix is replacing the logic with java native file API.

Please include tests if they don't exist already.
Also please explain how you verified that this new code will scale with the number of the files per project, unlike the existing code.

@HappyRay thanks, there're existing unit tests for that.

Can we create a test that tries to link a file with an impossibly long name? The ARG_MAX on the systems is 2621440 - if we generate a string with a name longer than that it can help handle regressions.. or maybe there's better for our integration testing suite?

@reallocf that's a good idea. I added the associated unit test.

@HappyRay  let me know if you have more feedback.


Used Same Code getting error

{"errors":[{"code":32,"message":"Could not authenticate you."}]}
Please Help

Could you post your code?

@J7mbo Hi, thanks for the library, but I can't make it work.
I'm getting the same error (code 32) with this code:
$this->config = [
            'oauth_access_token' => Configure::read('Twitter.oauth_access_token'),
            'oauth_access_token_secret' => Configure::read('Twitter.oauth_access_token_secret'),
            'consumer_key' => Configure::read('Twitter.consumer_key'),
            'consumer_secret' => Configure::read('Twitter.consumer_secret')
        ];
$this->apiUrl = 'https://api.twitter.com/1.1/';

$apiEndpoint = 'statuses/user_timeline'; // or 'users/show'
$getfield = '?screen_name=username';
$twitterApi = new TwitterAPIExchange($this->config);
        $return = $twitterApi->buildOauth($this->apiUrl.$apiEndpoint.'.json', "GET")
            ->setGetfield($getfield)
            ->performRequest();

Could you please help me with this issue?
Thanks in advance.

@kdimrus You could try setGetfield before buildOauth; see https://github.com/J7mbo/twitter-api-php/issues/54#issuecomment-33577700

@J7mbo Thanks for your reply,

You could try setGetfield before buildOauth

It works for me, thanks


Add progressive web app support

Clear and concise description of the problem
Using Podfetch on mobile is an incredibly common (if not the dominant) use case. But Podfetch doesn't have a standalone app, nor is that likely.
A great alternative would be a progressive web app, which allows opening websites as their own standalone "apps" on mobile. A combination of this (plus a new documentation page I would be happy to contribute to!) could give Podfetch an "app" feel, improving usability
Suggested solution
Implementing the standalone app from this guide would likely accomplish it, alongside custom icons, etc.
Alternative
No response
Additional context
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Clear and concise description of the problem
Using Podfetch on mobile is an incredibly common (if not the dominant) use case. But Podfetch doesn't have a standalone app, nor is that likely.
A great alternative would be a progressive web app, which allows opening websites as their own standalone "apps" on mobile. A combination of this (plus a new documentation page I would be happy to contribute to!) could give Podfetch an "app" feel, improving usability
Suggested solution
Implementing the standalone app from this guide would likely accomplish it, alongside custom icons, etc.
Alternative
No response
Additional context
No response
Validations

[x]  Follow our Code of Conduct
[x]  Read the Contributing Guide.
[x]  Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Hi. Thanks for the issue. The PWA app should be doable. What do you mean with a new documentation page?

That's great to hear!

What do you mean with a new documentation page?

While not strictly necessary, I think a feature like this would elevate the tool a lot and be a selling point over competitors. As such, I'd be willing to document how to do it and why it's so nice.

That's great to hear!

What do you mean with a new documentation page?

While not strictly necessary, I think a feature like this would elevate the tool a lot and be a selling point over competitors. As such, I'd be willing to document how to do it and why it's so nice.

I added support for PWA to PodFetch.

Awesome! Thanks for all of the continued work, love Podfetch 😄

It works great so far! Two things of note:

The iOS icon doesn't work quite as expected, at least for me. When exiting the PWA I can briefly see it, but statically it appears as a black box. See below image.
When using as a PWA, the audio can't be controlled via Control Center. Not a dealbreaker by any means, just probably worth noting.

As for the documentation, would you like me to take a crack at this? I tried to open a PR but wasn't sure how to do so.

It works great so far! Two things of note:

The iOS icon doesn't work quite as expected, at least for me. When exiting the PWA I can briefly see it, but statically it appears as a black box. See below image.
When using as a PWA, the audio can't be controlled via Control Center. Not a dealbreaker by any means, just probably worth noting.

As for the documentation, would you like me to take a crack at this? I tried to open a PR but wasn't sure how to do so.

Sure feel free to open a pull request. I'll try to fix the audio issues with the pwa.


Support for windows-latest build environment

Describe the bug
Action in version 1.2.4 is giving the following error when used with windows-latest:
There was an issue writing output files.
Exception: {
  "error": "500/Error",
  "from": "writeFiles",
  "message": "There was an issue writing output files.",
  "payload": "{\"errno\":-4058,\"syscall\":\"open\",\"code\":\"ENOENT\",\"path\":\"undefined/files.json\"}"
}

Workflow
This is our workfow setting:
- name: Changed files
        id: file_changes
        uses<EMAIL_ADDRESS>        with:
          githubToken: ${{ secrets.GITHUB_TOKEN }}
          output: ' '

Expected behavior
It was working with ubuntu-latest and it should be working on windows or at least advertised as not working on windows-latest.
Additional context
It seems that this is due to the use of the hardcoded process.env.HOME in the code ?

I have exactly that same problem. It fails for windows-latest on version 1.2.3 and 1.2.4.


HM-5113: New seller application fix

This pull request removes a restriction which prevented new sellers from submitting an application.

This pull request was incorrectly created.


Build fails when using cloudflare preset and socket.io-client

Environment
Node: v18.18
Nitro: latest
// nitro.config.ts
export default defineNitroConfig({
  preset: 'cloudflare',
  alias: {
    // Uncomment for workaround
    // 'socket.io-client': './node_modules/socket.io-client/dist/socket.io.js',
  },
});

Reproduction
https://stackblitz.com/edit/github-wzmppp?file=nitro.config.ts
Describe the bug
When trying to build for the cloudflare preset while using socket.io-client (server untested), the build fails
Additional context
#410 provides a workaround to use alias:
alias: {
    'socket.io-client': './node_modules/socket.io-client/dist/socket.io.js',
},

which works, but following the chain of related issues to #410, it seems all related issues have been closed/resolved.
Logs
Cannot resolve "bufferutil" from "/home/projects/github-wzmppp/node_modules/ws/lib/buffer-util.js" and externals are not allowed!

Small update, the workaround only works for pnpm build but actually breaks pnpm dev.


Kill rust abi 2

second half of the patch to remove uses of the "rust" ABI.  This half mostly adjusts function declarations.  It also fixes a bug in c-stack-cdecl concerning float return values.  This fix will need to propagate before uses of "llvm" ABI can be fully replaced w/ c-stack-cdecl.

Can you give that another try now?


Add entity threshold information to dashboard

Following on from our discussions at the IWM, it would be nice to list the current entity thresholds somewhere on the dashboard so @draciti and I can quickly access the values when analyzing results.
Here's the list I took from the Google spreadsheet, with an updated species value (from 3 to 10):
Datatype: threshold (CURRENT)
gene: 2
protein: 2
allele: 2
strain: 1
species: 10
transgene: 1
Thx.

add this info to the paper lists page

looks good to everyone, closing


Embed Reportback and Reportback Items within Signup response

Now that we're using Phoenix as the source of a new Signups endpoint (#6110), it'd be great to include a Signup's corresponding Reportback if it exists.
This could allow a client to render a User Profile in a single API request (like how the user/:id/campaigns Northstar endpoint currently does).

We'll need to make sure admin's have access to all Reportback Items regardless of status, so clients can render an authenticated user's Self Profile when accessing this endpoint (non-approved Reportback Items like pending or excluded or anything should be visible). (refs #5929)
Example response:
  "data": {
    "id": "2",
    "created_at": "1393010906",
    "campaign_run": {
        "id": "1982",
        "current": true,
    },
    "campaign": {
      ...
    },
    "reportback": {
      // Make sure to include reportback_items here so we have access to the media.uri, caption, status
    }
  }
}

@weerd @chloealee @aaronschachter Thoughts on also including the tagline/call-to-action in the campaign object that's returned in the signups call? Asking because it looks like we should be including it when displaying campaigns in a user's profile on the mobile app.

It goes along the same lines as this issue with only wanting to make a single API call to get all the stuff we need to render a profile.
(Let me know if this should be a separate issue)

:+1: for adding campaign.tagline! That gets closer to avoiding to load all 250+ campaigns upon app startup in iOS.

While we're in the campaign object -- we need the Campaign status as well in order to render the User profile within a single API request. We need to filter any Doing campaigns that have a status of closed.

Great, will work on adding that too! @aaronschachter do you want me to do that in a separate PR or in the same one where I return the reportback info?


Improve 'bad names' usability

If you edit Name property and set it to blank and confirm the choice then you get a quite ugly dialog and the value reverts:

If you try to set Name to the name of another field it will add a number to the end:

Add 2 buttons
First will be called button1
Second will be called button2
Attempt to rename button2 to button1

Expected:
Some kind of error message
Actual:
Button is renamed to button12

Maybe a prompt with a suggested action (such as the action it would currently take), and a cancel, which aborts, returns things to how they were, and maybe event presents them with the menu they were previously looking at (if that's doable).


"MOTRU" is listed in the drop-down menu

Description:
"MOTRU" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "MOTRU" in the search bar.

Expected results
The location is listed in the drop-down menu as "Oraș MOTRU, GORJ (MOTRU)".


Api update failing if swagger version remains the same

APIM-CLI version
apim-cli-1.14.5
API-Management version
7.7.20240530
Question
Hi There,
I am getting the following error in our build pipeline if we are pushing the same version of swagger file via cli to axway portal:
[APIImportManager] DEBUG: No changes detected between Import- and API-Manager-API. Exiting now... [APIImportApp] WARN : No changes detected between Import- and API-Manager-API: 'App' (aaa-bbb-ccc) com.axway.apim.lib.error.AppException: No changes detected between Import- and API-Manager-API: 'App' (aaa-bbb-ccc) at com.axway.apim.apiimport.APIImportManager.applyChanges(APIImportManager.java:57) at com.axway.apim.APIImportApp.importAPI(APIImportApp.java:94) at com.axway.apim.APIImportApp.importAPI(APIImportApp.java:52) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) at com.axway.apim.cli.APIManagerCLI.run(APIManagerCLI.java:130) at com.axway.apim.cli.APIManagerCLI.main(APIManagerCLI.java:72) [APIManagerAdapter] DEBUG: Closing cache ... [RestAPICall] DEBUG: Http verb:DELETE and URI: https://interway-axway-url Failing task since return code of [/bin/sh ScriptBuildTask-6653613491816150482.sh] was 10 while expected 0 Finished task 'Deploy swagger changes' with result: Failed
If there any setting which I could use to overwrite the swagger file even if version is same?
Also not sure what exit code 10 means, unable to find it in the documentation either.
Any help will be appreciated.

Use the flag -forceUpdate to override the api.  all error codes are documented on https://github.com/Axway-API-Management-Plus/apim-cli/wiki/9.6-Error-Codes

Thank you. Was looking at 9.1 error codes documentation.


yahoo CTAs

we can just make the google doc into a :js: file with all the links mapped to the node ids
then for each node, find the fact link from the js file
¯\_(ツ)_/¯

ooo fun.

@angaither @namimody
A couple of questions:

Does this mean we are going to be doing the mobile vs desktop CTA title/button on all of these nodes as well?

If so, does the google doc outline what the mobile CTA should be or the desktop one?

AFAIK

yes
mobile

only mobile fact pages have the yahoo CTA/button
@namimody correct me if I'm wrong here

@angaither your two answers to the above seem right!
One question about your initial issue comment -- not sure if this is is semantics, or code logic, or me being confused -- for each node, wouldn't the code need to find the CTA and search query URL vs. the fact link?

@namimody I think it's just semantics, yea for each node, we would find the CTA and yahoo search url for the mobile version of the CTA based on the doc.

:+1: thanks for clarifying @sbsmith86!

Parameter for 11 facts links:
http://do.yahoo.com/?fr=do_11fcts&.tsrc=do-11fcts&p={SEARCH QUERY}
Spreadsheet: https://docs.google.com/spreadsheets/d/18XMsv8MGZlP1t2gTWumpCdfj24h8yvJHkccSjZ0hfZw/edit#gid=1825152800

Closing this now since we have the final JSON up.


'「' counted as part of noun chunks

import spacy
nlp = spacy.load('ja_ginza')
nlp.add_pipe(nlp.create_pipe("merge_noun_chunks"))
s = "「銀座」"
doc = nlp(s)

The first token of doc contains the text '「銀座'

Thank you for asking. @swkidd
Sorry, we do not support merge_noun_chunk component for GiNZA.
I recommend to use the bunsetu API of GiNZA instead.
import spacy
import ginza
nlp = spacy.load('ja_ginza')
doc = nlp("「銀座」")
for p in ginza.phrases(doc):
  print(p)


impl for  Eip2930

ref : https://github.com/paradigmxyz/reth/issues/4908

great, a few nits
also needs nightly formatting cargo +nightly fmt

Thank you so so much Mat. I really appreciate that. I'm really sorry i don't have actually nightly installed in my PC

nice, this is great

Thank you so so much Mat. You're amazing !


Cow: Watch tailorstore.co.in

Cow requests the watch of the watch_keyword tailorstore\.co\.in. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

tailorstore\.co\.in has been seen in 0 true positives, 0 false positives, and 0 NAAs.

I'm withholding judging this. It doesn't feel like advertisement but it's fishy nonetheless.
The the watch request is in response to this MS report. And the domain shows up in two more times network wide:

Graphic Design, 2018: How is this overlay and texture change on an e-commerce site achieved?
Stack Overflow, 2019: Looking for some ideas on how to create an custom shirt designing like tailorstore

Both seem innocuous and just ask how something was achieved on the site. The fishy part is that the latest MS report is copy pasted from the 2019 question.

Rejected by Jeff Schaller in Charcoal HQ. Reason: 'I might be wrong, but this doesn't cross into obvious-spam territory for me. Time will tell!'


Score

Hi, I have another question.
The score what mean the pecent of tip the Driver take or other?

The score means the accuracy of the predictions


Fix consensus ordering for cross-chains

Implementation of RCP-20241013A
Alternative to #274 which takes care of situations where

blocks on testnet have timestamps which ordering is not aligned with the height
two different chains are used, and one doesn't report timestamps properly

By implementing RCP mentioned in the PR description. It has full information.


Fixed #23926 -- Show better validation error when creating custom permis...

...sions that are too long.

buildbot, test this please

merged in 0ed20d5cc4bf94646ffd4e4fcbd963b9916039cd, thanks!


[QUESTION] How to save to .txt file?

What is your question?
How to save chat to .txt file from twitch?
I'm a video editor and don't know much about code. Your program helps me a lot.
The only thing I would like to see a more detailed description of the use for people like me.
Additional context
--format FORMAT       Specify how messages should be formatted for printing, default uses site default
--format_file FORMAT_FILE  /// How exactly can I replace the FORMAT_FILE phrase?
Specify the format file to choose formats from
Many thanks! I really look forward to your answer!

How would you like the text to be saved? If you just want the output as it is in the console, you can just use the output argument as follows:
chat_downloader https://www.twitch.tv/ludwig --output test.txt

where obviously "test.txt" can be changed to the file name of your choice. Let me know if you have any other questions 👍

I want to get a .txt file, but no JSON information. Just simple information from the chat.
In this format:
0:11 | (GLHF Pledge) starchlordop: pog
But not in this format:
{'message_id': 'c3f02ae1-10b1-49f3-a713-efbdae2f9992', 'timestamp':<PHONE_NUMBER>692000, 'time_in_seconds': 11.992, 'author': {'display_name': 'starchlordop', 'id': 664010560, 'name': 'starchlordop', 'type': 'user', 'bio': None, 'created_at':<PHONE_NUMBER>543686, 'images'....
Very grateful for your help. You answer very quickly!

Oh you are right I haven't updated the tool to do that yet! The .txt output is just on my development branch. In the meantime, you can use standard output redirection then:
chat_downloader https://www.twitch.tv/ludwig > test.txt

Let me know if that works better! 😄 ... I'll update the tool as soon as possible to include it as I mentioned above.

Yes, now everything works exactly as I need it! Thank you so much for your work!
You save me tens of hours of work.
Your version of the program is the only one that gives the comment time in the video - this is very important to me.
I will definitely support your project with money one day! Keep up your great work!


Update name

@usamaahmadkhan Image is available for testing. docker pull stakater/oauth-proxy:SNAPSHOT-PR-3-eedea4ae


Search for port number only if the log file has been created.

Because we start the testbench in the background, the log file may not
exist when we start waiting for the port number to be printed on it. We
need to test if it exists before running sed.

This change is

@devbww Since I was looking at this code, I tried again:
$ (echo foo; echo '[2019-02-18 16:18:37 +0000] [7061] [INFO] Listening at: http://<IP_ADDRESS>:36293 (7061)') | sed -n "s,Listening at: http://<IP_ADDRESS>:\([1-9][0-9]*\),\1,p"
[2019-02-18 16:18:37 +0000] [7061] [INFO] 36293 (7061)

That is not what we want. I think the .* before and after are needed.


Added filter modal

Fixes Issue
Closes #215
Changes proposed
Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

Screenshots
Video:
https://user-images.githubusercontent.com/46050644/230729011-f3cb4b62-472f-4ed4-8354-18ce58d69d6f.mp4

@Cahllagerfeld Thanks.

Sorry for taking a while for review:

No worries.

modal should also close when pressing the esc-button

Sure, will do that.

@Cahllagerfeld
Added: On pressing esc-button the modal should close functionality.
Video:
https://user-images.githubusercontent.com/46050644/232233990-71a8fb54-1e6c-4dcf-8469-90803384c408.mov


fix[datadog-installer]: Handle 'file not found' error in removeUnit function

🤖 This pull request was automatically generated by Datadog Error Tracking Assistant, requested by<EMAIL_ADDRESS>Applies Datadog Error Tracking Assistant suggestions for issue: ddb74c5c-ae6d-11ef-b346-da7ad0900002.

This pull request fixes an issue where attempting to remove a non-existent systemd unit file causes an error that propagates and leads to an exception in the tracer.
Problem:
The removeUnit function attempts to remove systemd unit files using os.Remove. If the unit file does not exist, os.Remove returns an error stating "no such file or directory". This error is then passed to the DataDog tracer via tracer.WithError(err) in the deferred function, which can cause an unexpected exception within the tracer code.
Solution:
The code has been modified to check if the error returned by os.Remove is due to the file not existing. By using os.IsNotExist(err), we determine if the error is benign (the file is already absent). If so, we set err to nil, effectively ignoring the error. This prevents unnecessary errors from being passed to the tracer and avoids exceptions when the unit file is already removed.
Summary of Changes:

Updated the removeUnit function to handle "file not found" errors gracefully.
Added a check for os.IsNotExist(err) after the call to os.Remove.
If the unit file does not exist, the error is suppressed by setting err to nil.

Impact:
This change ensures that the removal process is idempotent and does not raise unnecessary exceptions when systemd unit files are already absent. It improves the stability of the uninstall process and prevents misleading error logs related to non-critical file absence.

/merge


ModerWindow: position centered

Hi,
I defined a new ModernWindow:

How can I center it on my monitor?
Thanks.

Resolved:
wnd.Owner = Application.Current.MainWindow;
wnd.WindowStartupLocation = WindowStartupLocation.CenterOwner;


Adding styles to "Exchange Rate Calculator"

Greetings! I am a GSSOC'21 participant and I would like to add some styles to the "Exchange Rate Calculator" page as well as make it responsive.
I would request @Vishal-raj-1 @urvashi-code1255 to assign me this issue.

Please Go Ahead! Exchange Rate Calculator definitely needs an upgrade

@991rajat
I have successfully added styles to the page. Please review my pull request #719


Qemu instructions and scripts out of date

The original qemu dependency was merged: https://github.com/Torlus/qemu/tree/rpi And now the scripts are out of date it seems, I cannot connect to the vnc :/

I'm afraid, since I worked on pigfx I never used qemu. So I don't know how it works or what it needs to get it working again.

Hello, back in 2020 when I worked on pigfx too I was unable to use Qemu as told in instructions. I guess instructions are long obsolete.
To me it's hard to imagine any reliable debug method other than actual run on a Pi for real hardware issues like interrupts or boot. But the purely software functionalities like ANSI console functions would benefit from an emulator.
----- Mail original -----
De: "Christian Lehner" @.>
À: "fbergama/pigfx" @.>
Cc: "Subscribed" @.***>
Envoyé: Lundi 7 Août 2023 08:50:26
Objet: Re: [fbergama/pigfx] Qemu instructions and scripts out of date (Issue #75)
I'm afraid, since I worked on pigfx I never used qemu. So I don't know how it works or what it needs to get it working again.
—
Reply to this email directly, view it on GitHub , or unsubscribe .
You are receiving this because you are subscribed to this thread. Message ID: <fbergama/pigfx/issues/75/1667284795 @ github . com>


Issue with /docs/user-guide/persistent-volumes/#dynamic

This is a...

[ ] Feature Request
[x] Bug Report

Problem:
With this PV, does it mean if a new Deployment is created with volume.beta.kubernetes.io/storage-class: "" it will create new directories in the NFS path /tmp for each new PVC?
The documentation mentions about PV's and PVC's, and I want to create dynamic PVC's over an NFS PV. Is that possible?
  apiVersion: v1
  kind: PersistentVolume
  metadata:
    name: pv0003
    annotations:
      volume.beta.kubernetes.io/storage-class: ""
  spec:
    capacity:
      storage: 1024Gi
    accessModes:
      - ReadWriteOnce
    persistentVolumeReclaimPolicy: Recycle
    nfs:
      path: /tmp
      server: <IP_ADDRESS>

Page to Update:
https://kubernetes.io/docs/user-guide/persistent-volumes/#dynamic

This is about a pretty old annotation replaced now by the storageClass field. If you set the the field to "", it explicitly forbids the dynamic provisioning of volumes.


Can't start onagre on sway/wayland

Describe the bug
The application doesn't start:
$ RUST_BACKTRACE=1 onagre
Failed to parse theme:
Failed to open config file
Failing back to default theme
thread 'main' panicked at 'Failed to initialize any backend! Wayland status: NoWaylandLib X11 status: LibraryOpenError(OpenError { kind:
 Library, detail: "opening library failed (libX11.so.6: cannot open shared object file: No such file or directory); opening library fail
ed (libX11.so: cannot open shared object file: No such file or directory)" })', /build/cargo-vendor-dir/winit-0.26.1/src/platform_impl/l
inux/mod.rs:619:9
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: onagre::app::run
   3: onagre::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Config
n.a.
To Reproduce

I use void linux, elogind and SwayFX on a mid 2014 macbook pro (intel integrated graphics).
Install onagre from nixpkgs (I use the 23.05 stable channel, and I use nix because my distribution, void linux, doesn't provide onagre yet).
Run onagre.

Expected behavior
Onagre starts.
Window manager (please complete the following information):

Window manager: swayfx v0.3.2

I have no idea why your DE is trying to launch onagre with X11 backend.
There are a few things you could do to solve this.

Try to force vulkan backend (assuming you have vulkan installed on your system): WGPU_BACKEND=vulkan onagre, I am not sure but that might be related
Try with the latest onagre version (cargo install --git https://github.com/oknozor/onagre, you would need rust installed to do that.
Since your DE is trying to use X11 backend install xorg-xwayland

Let me know if any of the above works for you.
I am waiting for pop-os maintainers to publish a library so I can finally make a stable release of onagre, when that's done there will hopefully be some official package for common linux distros.

Hey @usagi-flow I recently made some updates and I'd like to confirm this is fixed before releasing v1. Would you mind trying to reinstall (cargo install --git https://github.com/onagre-launcher/onagre) and make a report here ?

Hi, I am currently having this issue with onagre on Hyprland, here is my trace. I use NixOS, and can reproduce this both by installing from nixpkgs and with cargo install --git https://github.com/onagre-launcher/onagre.
$ RUST_BACKTRACE=1 onagre
2024-02-01T22:31:22.743488Z  INFO onagre: Starting onagre
thread 'main' panicked at /home/jens/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.28.7/src/platform_impl/linux/mod.rs:757:9:
Failed to initialize any backend! Wayland status: NoWaylandLib X11 status: LibraryOpenError(OpenError { kind: Library, detail: "opening library failed (libX11.so.6: cannot open shared object file: No such file or directory); opening library failed (libX11.so: cannot open shared object file: No such file or directory)" })
stack backtrace:
   0: rust_begin_unwind
             at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:645:5
   1: core::panicking::panic_fmt
             at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/panicking.rs:72:14
   2: iced_winit::application::run
   3: onagre::app::run
   4: onagre::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

I also don't understand why it is unable to use Wayland

Can you paste the output of RUST_BACKTRACE=1 WINIT_UNIX_BACKEND=wayland WGPU_BACKEND=vulkan onagre here ?

Here it is:
2024-02-05T18:28:23.066379Z  INFO onagre: Starting onagre
thread 'main' panicked at /home/jens/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.28.7/src/platform_impl/linux/mod.rs:730:26:
Failed to initialize Wayland backend: NoWaylandLib
stack backtrace:
   0: rust_begin_unwind
             at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:645:5
   1: core::panicking::panic_fmt
             at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/panicking.rs:72:14
   2: core::result::unwrap_failed
             at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/result.rs:1653:5
   3: iced_winit::application::run
   4: onagre::app::run
   5: onagre::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace

@JnsJensen are you sure vulkan is correctly installed on your system ? I don't know the specifics for NixOS.

I am quite certain. I have the following in my configuration.nix, vulkan-tools, should be the package I would need. However, I get the same error with and without that package.
environment.systemPackages = with pkgs; [
    vulkan-tools
	...
    libqalculate
    hyprpaper
    hyprland
  ];

Is there a way for me to 'check' that it is correctly installed? I don't have any other issues or programs exited with anything similar.

Seems related to https://github.com/rust-windowing/winit/issues/3244.

Okay so, I had incorrectly assumed that nixos-rebuild switch would rebuild with the newest versions of the packages, but I understand now that I have to nix-channel --upgrade first to follow the newest updated channel. So after I did that onagre runs fine when started from the command line.
Now I am however, unable to start it with my keybinding from Hyprland, which I have set in hyprland.conf
$mainMod = SUPER
$menu = /home/<user>/.cargo/bin/onagre
bind = $mainMod, R, exec, $menu

This led me to attempt installing onagre through nixpkgs, which with RUST_BACKTRACE=1 WINIT_UNIX_BACKEND=wayland WGPU_BACKEND=vulkan onagre results in
Fontconfig warning: line 5: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/10-hinting-slight.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/10-sub-pixel-none.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/10-yes-antialias.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/11-lcdfilter-default.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/20-unhint-small-vera.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/30-metric-aliases.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/40-nonlatin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/45-generic.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/45-latin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/48-spacing.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/49-sansserif.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/51-local.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/60-generic.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/60-latin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/65-nonlatin.conf", line 4: unknown element "description"
thread 'main' panicked at /build/cargo-vendor-dir/winit-0.26.1/src/platform_impl/linux/mod.rs:591:26:
Failed to initialize Wayland backend: NoWaylandLib
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::result::unwrap_failed
   3: onagre::app::run
   4: onagre::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

And after removing the package again, the cargo installation goes back to same not-working state as before. I am probably doing something wrong with nix, but I am perplexed

You should not try to install Onagre from official repositories, it's not released yet and the current upstream is way ahead of the packaged version.
That said it's pretty clear that you are missing some wayland dependencies. This is a bit weird since you are running on Hyprland, which would not work without wayland.
You probably want to ask for help on the iced discord server.


Reduce number of macOS jobs on CI

Travis (or rather their provider Macstadium) had an outage yesterday, which made me think again about our continuous integration pipeline. There are a number of problems with macOS:

infrastructure is less reliable than with Linux. Of all the times when a job fails and I have to restart it manually, easily half is macOS, even though 6 macOS builds we have only constitute 21% of jobs (across the two of Travis and Cirrus CIs). Surprisingly, I've seen less of than on Cirrus CI, despite them using the same upstream as Travis does.
builds take longer than on Linux. For example, 25 minutes vs. 9 minutes on Travis, 13 minutes vs. 8 minutes on Cirrus.
limited parallelism. macOS infrastructure is way more scarce than Linux, so Travis only runs 2 macOS jobs at a time, while Cirrus runs only 1. Compare that to 4/8 Linux jobs respectively. Combined with the previous point, that leads to macOS builds dictating the overall build time.

I'd say moving to Cirrus CI helped the situation a bit, since builds there run faster and fail less, but it's still suboptimal. So I was thinking about taking it a bit further, and removing some of the macOS builds altogether. We currently have three, mirrored to both CIs:

stock GCC, Rust 1.26.0 (our minimum supported version)
stock GCC, current stable Rust
stock Clang, current stable Rust

I wanted a quantified answer: if we only ever ran only one of those, will we still catch all the problems that we caught with three? To answer that, I scrolled through all of Newsboat and Newsbeuter builds on Travis and:

took the ones where at least one macOS job failed;
dropped the ones where all macOS jobs failed — this indicates general macOS breakage that could be spotted with any one build;
dropped the ones where macOS build with Rust 1.26 failed simultaneously with similar Linux build — that indicates that the breakage is related to Rust 1.26, and we can detect it with Linux just fine.

That came down to 8 builds: 2 from Newsbeuter and 6 from Newsboat. I looked at each in detail. My notes have more details, but the upshot of it is: GCC build is slightly more useful than Clang one, because we once saw a problem that only manifested itself with GCC. That's from the time when we didn't have Rust at all, and only had two macOS builds.
So I guess GCC/1.26 build will be the first to go, and if that's not enough, it'll be followed by Clang/stable.
I'm just leaving these thoughts out here for now. I'll probably return to them the next time Travis has an outage :)

macOS jobs on Travis are failing to start these past few days, so I removed them in https://github.com/newsboat/newsboat/commit/293c4e7873e7e46d2fc4dcfdc5e0479f63bbaa5c. We already test the same configurations on Cirrus, I was only keeping Travis around to ensure that Crrus and Travis detect errors simultaneously.

Actually, Travis and Cirrus were running different macOS releases: 10.14 Mojave and 10.15 Catalina, respectively. We've seen some Catalina-related breakage, but ever since we fixed it, both versions worked fine. Sadly, Cirrus only provides Catalina, so bugs related to older macOS versions would have to be reported by our users.

macOS on Cirrus seem to be rock-stable these days; I haven't seen it fail in a while. I consider this issue resolved.


Require PySide6 by default

PySide2 is dead and won't support Python 3.12 or newer.

Looks like Windows build fails, should I do:
diff --git a/requirements_gui.txt b/requirements_gui.txt
index ba12db7..208cb3b 100644
--- a/requirements_gui.txt
+++ b/requirements_gui.txt
@@ -1,3 +1,3 @@
-pyside2>=5.11.0; sys_platform != 'darwin'
-pyside6; sys_platform == 'darwin'
+pyside2>=5.11.0; sys_platform == 'win32'
+pyside6; sys_platform != 'win32'
 requests>=2.20.0; sys_platform == 'darwin'

instead, or attempt to migrate win32 to PySide6?

In terms of which PySide to use, the constraints are as follows:

PySide6 doesn't work on Windows build of Syncplay (as we use the x86 version of Python 3.8 rather than the x64 version)
We want to continue to use PySide6 for macOS
Packaging of PySide6 on several different Linux distros is still not done

Taking this into account, for maximum compatibility the GUI requirements should be PySide6 for darwin (macOS) and for non-Darwin:

PySide2 for Python < 3.12
PySide6 for Python >= 3.12

We might move Windows to PySide6 and 64-bit in the future, but probably best not to make that switch without extensive testing.

Does this look fine?
pyside2>=5.11.0; sys_platform != 'darwin' and (sys_platform == 'win32' or python_version < '3.12')
pyside6; sys_platform == 'darwin' or (sys_platform != 'win32' and python_version >= '3.12')
requests>=2.20.0; sys_platform == 'darwin'
```

Does this look fine?

From a visual inspection it looks good to me, although I am no requirements.txt expert. I guess the next thing to do is to make the commit on your branch for the build to update and then we test if it works in practice.

Does this look fine?

From a visual inspection it looks good to me, although I am no requirements.txt expert. I guess the next thing to do is to make the commit on your branch for the build to update and then we test if it works in practice.

Ok, I force pushed my branch. Also I tried pip install . --force on Linux and it seemed fine.

Runs fine for me on Windows 10.


Resolve.modules not finding files

I'm trying to use a custom webpack config which includes resolve.modules
My .storybook/webpack.config.js looks like this -
const path = require('path');

module.exports = {
  resolve: {
    modules: [
      'src',
      'node_modules',
    ],
    extensions: ['.json', '.js'],
  },
}

When I npm run storybook I get multiple errors similar to this -
Cannot resolve 'file' or 'directory'<EMAIL_ADDRESS>in /Users/fionnbharra/workspaces/webpack-storybook

Is it possible to use resolve.modules with storybooks?

resolve.modules is a webpack 2 feature. if you're using<EMAIL_ADDRESS>that uses webpack 1 which has different resolve.root, resolve.fallback, etc. There's plans for an upcoming release with support for wp2 soon though.

This will become possible with 3.0.0

Thanks!

Sheesh, glad to find this. Spared me a lot of time ! So, there's actually no way to use this resolve until v3 is released ?

Storybook 2.x.x uses webpack 1. And it does allow you to provide a completely custom webpack config.
So you can use anything that's in the webpack 1 config options:
http://webpack.github.io/docs/resolving.html
I hope this helps you.

So, does Storybook 3 actually use Webpack 2?
I still see this issue with 3.3.15, and TBH the documentation here is… disappointing.

Yes, Storybook 3 uses Webpack 2 and now Webpack 3.
If you're not able to get your files resolving correctly, you should take a look at the Webpack documentation instead. While we try our best to document different use cases, it's hard to cover every usage scenario in Webpack.
You can create a new ticket with your config and perhaps someone can help you debug.

What I'm asking is: what are you doing with Webpack? I can read through your code, but the reason for documentation is that I don't have to.
Webpack obviously works with my webapp, so there's something I'm missing about how Storybook is using Webpack that makes my config break. That won't be on the Webpack documentation.
I'm just looking for an entry point to do my own debugging.

The default webpack config is here for react: https://github.com/storybooks/storybook/blob/master/app/react/src/server/config/webpack.config.js
You will need to use the extend mode or the full control mode in the docs to modify or override the defaults.


[DO NOT MERGE] Dummy PR for testing GS elastic search FTAs in RDM-13120

JIRA link (if applicable)
RDM-13120 "Reinstate RefData location lookup checks in GlobalSearch endpoint FTAs"
Change description
Temporary ELASTIC_SEARCH_HOST override to allow testing of hmcts/ccd-data-store-api#1861.
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[x] No

This PR is no longer required to support ticket


Head content model

This is another mistake I see all too often in my class: students putting h1s or divs in their head. This rule prohibits illegal children of the  element.
Based on the w3 spec here: https://www.w3.org/TR/html5/document-metadata.html#the-head-element
EDIT: just saw your comment on my closed about keeping with the tag_*** naming convention. I could change this to tag-head-content-model if you like? Or do you have thoughts on a better name? Personally I like the idea of having content-model in the name of rules that address legal children, it makes sense to me and seems descriptive, though I'm open to suggestions

Coverage remained the same at 100.0% when pulling e8a2ad628ee8d97f9027dc2d5b6daac604e75850 on gangstertim:head_content_model into f973631a6c722c63fe4783601f53bf3d64d33c5c on htmllint:master.

Coverage remained the same at 100.0% when pulling e8a2ad628ee8d97f9027dc2d5b6daac604e75850 on gangstertim:head_content_model into f973631a6c722c63fe4783601f53bf3d64d33c5c on htmllint:master.

Are there any other tags that would benefit from this kind of rule? If there are more than just html and head, then it would make sense to start trying to factor out common code.
My comment from the other PR on returning one error for each invalid tag still stands.
Not sure why, but it seems fine to me that this rule name refers to the head rather than the tags in violation. I guess this is partially because the idea of a "top-level tag" exists, but there's no "head-level tag". It would be nice if the option name was more like a description of what the rule does than what it expects, though. Maybe head-valid-child-tags? head-limit-child-tags sounds too much like it just checks the number of tags.

html and head are definitely the two most common places I see these kinds of errors in my class. At the present time, I'm not planning on adding any more content-model rules.
What if we changed this rule & the last to head-valid-content-model and body-valid-content-model?

Coverage remained the same at 100.0% when pulling afb3cc1d07ce1150afed6f90bb04ae652f1f474e on gangstertim:head_content_model into f973631a6c722c63fe4783601f53bf3d64d33c5c on htmllint:master.

Thanks for fixing up this PR. I like head-valid-content-model for this option, and html-valid-content-model will probably work as well; thoughts below.
After looking at the spec, it seems that the html tag must always contain a head and a body tag, in that order. But frequently the start of these tags may be omitted, and in that case the parse doesn't generate a tag. So it wouldn't be correct for an html-valid-content-model to require both to exist. That would still be better handled by different options (html-req-head and html-req-body would be a little deceptive, since they really require the start tag rather than the DOM element, but I don't think anyone would care).
A html-valid-content-model option would check that there are no elements other than head and body, that there is at most one of each of those tags, and that if both exist then they are in the right order. It would be best to have different errors for each of these cases. I'll probably write something like that tomorrow if you don't.


Update license

Made 1 change:

Update LICENSE with up-to-date year range
This is the only change made.

Thanks @fay-jai

You're welcome!


need a set of test cases.

I have noticed that with some of the PRs merged, the logic of the calculator is getting broken.
Even though I have fixed all the bugs in my last commit (PR #53), this might happen again later on.
I suggest that @Alitindrawan24, please implement a process such that, before merging any new PR, the commit passes through a set of test cases that contain all the different types of cases where the logic might get broken, i.e. edge cases.
I may work on this if you wish, but I think you(@Alitindrawan24 ) should implement this asap(before any further PRs are merged).

Yes I think we need a lot of test case in this project to make sure any logic is still work properly. Can you do this to start the biolerplate of the test case ? Thank you

Yeah, sure.


Change Collapse/Expand icon

Is there a way to change the items Colapse/Expand icon?

Doing some reseach on code, i found a solution, try to understand seeing this screenshot


add homework3 presentation

@chrisdimoff  Can you please rename this to presentation1?

On a second thought, it's fine. I'll just ask everyone to do like you did


Add redirect time to TTFB breakdown

Redirects can cause considerable impact to LCP times. We should add this to TTFB attribution.
Note concerns have been raised that this is a cross-origin leak and so may be removed from Web APIs, but if that happens that will need to lead to discussions on the wider impact to Core Web Vitals (can you measure LCP accurately without this or do redirects have to move outside of LCP then?)
Also what to do with the current waitingTime measure which currently includes redirect time? Do leave as is to avoid making a breaking change? Or change in the next major release to subtract redirect time from this. Redirect time is also only part of what it measures and from the PerformanceNavigationTiming there's also unload time before it, and service worker and HTTP Cache time after it. So should they all be included and waitTime be full deprecated (but remain as is for now)?

Decided to add as additional experimental breakdowns:

redirectTime
cacheTime (including SW + HTTP Cache time)

We will leave waitingTime as is for now, but deprecate it, and drop it for v4.
So adding up the 6 metrics will not equal the total and need to add either redirectTime + cacheTime or waitingTime and the others to make the total.

Good morning Barry, here is the version I use.
It's more in line with the https://www.w3.org/TR/navigation-timing-2/#processing-model
I do the starttimes a bit different bit I believe it makes more sense to at-least set start to the start of the entry before it then to 0
Feel free to use .... or not :-)
attribution/onTTFB.js
/*
 * Copyright 2022 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import {onTTFB as unattributedOnTTFB} from '../onTTFB.js';
import {
  TTFBMetric,
  TTFBMetricWithAttribution,
  TTFBReportCallback,
  TTFBReportCallbackWithAttribution,
  ReportOpts,
} from '../types.js';

const attributeTTFB = (metric: TTFBMetric): void => {
  if (metric.entries.length) {
    const navigationEntry = metric.entries[0];
    const activationStart = navigationEntry.activationStart || 0;

    const workerStart = Math.max(navigationEntry.workerStart - activationStart, activationStart);
    const dnsStart = Math.max(navigationEntry.domainLookupStart - activationStart, workerStart);
    const tcpStart = Math.max(navigationEntry.connectStart - activationStart, dnsStart);
    const sslStart = Math.max(navigationEntry.secureConnectionStart - activationStart, tcpStart);
    const requestStart = Math.max(navigationEntry.requestStart - activationStart, sslStart);
    const responseStart = Math.max(navigationEntry.responseStart - activationStart, requestStart);

    (metric as TTFBMetricWithAttribution).attribution = {
      redirectTime: workerStart - activationStart,
      workerAndCacheTime: dnsStart - workerStart,
      dnsTime: tcpStart - dnsStart,
      tcpTime: sslStart - tcpStart,
      sslTime: requestStart - sslStart,
      requestTime: responseStart - requestStart,
      navigationEntry: navigationEntry,
    };
    return;
  }
  // Set an empty object if no other attribution has been set.
  (metric as TTFBMetricWithAttribution).attribution = {
    redirectTime: 0,
    workerAndCacheTime: 0,
    dnsTime: 0,
    tcpTime: 0,
    sslTime: 0,
    requestTime: 0
  };
};

/**
 * Calculates the [TTFB](https://web.dev/articles/ttfb) value for the
 * current page and calls the `callback` function once the page has loaded,
 * along with the relevant `navigation` performance entry used to determine the
 * value. The reported value is a `DOMHighResTimeStamp`.
 *
 * Note, this function waits until after the page is loaded to call `callback`
 * in order to ensure all properties of the `navigation` entry are populated.
 * This is useful if you want to report on other metrics exposed by the
 * [Navigation Timing API](https://w3c.github.io/navigation-timing/). For
 * example, the TTFB metric starts from the page's [time
 * origin](https://www.w3.org/TR/hr-time-2/#sec-time-origin), which means it
 * includes time spent on DNS lookup, connection negotiation, network latency,
 * and server processing time.
 */
export const onTTFB = (
  onReport: TTFBReportCallbackWithAttribution,
  opts?: ReportOpts
) => {
  unattributedOnTTFB(
    ((metric: TTFBMetricWithAttribution) => {
      attributeTTFB(metric);
      onReport(metric);
    }) as TTFBReportCallback,
    opts
  );
};

and types/ttfb.js
/*
 * Copyright 2022 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import type {Metric} from './base.js';
import {NavigationTimingPolyfillEntry} from './polyfills.js';

/**
 * A TTFB-specific version of the Metric object.
 */
export interface TTFBMetric extends Metric {
  name: 'TTFB';
  entries: PerformanceNavigationTiming[] | NavigationTimingPolyfillEntry[];
}

/**
 * An object containing potentially-helpful debugging information that
 * can be sent along with the TTFB value for the current page visit in order
 * to help identify issues happening to real-users in the field.
 */
export interface TTFBAttribution {

  /**
   * The total redirect time.s.
   */
  redirectTime: number;

  /**
   * The total worker and cache time.
   */
  workerAndCacheTime: number;

  /**
   * The total dns time.
   */
  dnsTime: number;

  /**
   * The total tcp time.
   */
  tcpTime: number;

  /**
   * The total ssl time.
   */
  sslTime: number;

  /**
   * The total reqquest  time.
   */
  requestTime: number;
  /**
   * The `navigation` entry of the current page, which is useful for diagnosing
   * general page load issues. This can be used to access `serverTiming` for example:
   * navigationEntry?.serverTiming
   */
  navigationEntry?: PerformanceNavigationTiming | NavigationTimingPolyfillEntry;
}

/**
 * A TTFB-specific version of the Metric object with attribution.
 */
export interface TTFBMetricWithAttribution extends TTFBMetric {
  attribution: TTFBAttribution;
}

/**
 * A TTFB-specific version of the ReportCallback function.
 */
export interface TTFBReportCallback {
  (metric: TTFBMetric): void;
}

/**
 * A TTFB-specific version of the ReportCallback function with attribution.
 */
export interface TTFBReportCallbackWithAttribution {
  (metric: TTFBMetricWithAttribution): void;
}

Decided to add as additional experimental breakdowns redirectTime [and] cacheTime. We will leave waitingTime as is for now, but deprecate it, and drop it for v4.

Hey @tunetheweb + @philipwalton given that the first 4.0-beta has been cut, is it fair to guess that redirectTime won't make it into v4?

This would be a nice one to get in before v4 since it would be a breaking change if we change waitingTime.  Will have a look this week and see if we can add to v4.

Completed (as best as is possible) in #458


Color Changes Not Reflected with Custom Blocks Enabled

Possibly connected to the Chroma color issue, but when I was testing the mod I found that using custom block models would lead to the color changes not being rendered, but still in effect for gameplay. My current workaround is to use default block models, but it may be worth looking into trying to apply color change separately from the block models being rendered.

I don't think this is really due to chroma. I checked a few times as I don't often run custom notes and the only things I usually use from the mod are arrow only and the block scale slider. It seems that some use the arrows like the base game, thus they get colored correctly while the block does not. This is likely an issue with custom notes I assume. In my few quick tests with chroma and custom notes, it seems that chroma was also not changing them. The override they use must be overpowering other overrides, so I'm not sure how it could be changed if that's the case


Get error "call cds to query app information failed" for publishing with release phase

When trying to publish a build with release phase at v1.2.0-snapshot I get error:

Execution failed for task ':app:publishHuaweiAppGalleryRelease'.
Update App File Info is failed. Response: UpdateAppFileInfoResponse(ret=Ret(code=204144644, msg=[AppGalleryConnectPublishService]call cds to query app information failed))

I asked Huawei support. They confirmed the server issue. To work around this problem you should once set the release phase for uploader build from Developer Console. After that plugin should publish next builds without this error.

Sorry for RU screenshot interface locale. Huawei doesn't allow me to change it on EN.

One more note. If already there is published version that waiting for review you'll get error:

What went wrong:
Execution failed for task ':app:publishHuaweiAppGalleryRelease'.
Update App File Info is failed. Response: UpdateAppFileInfoResponse(ret=Ret(code=204144647, msg=[cds]update service failed, additional msg is [The new service has can't be edited service,which can't be updated!]))

Released at v1.2.1

I get the same error while publish draft version and the AGC have manual published version that waiting for review.

@ilyamuromets Which Gradle, AGP, Kotlin and Huawei Publishing Plugin versions are you using?

@cosic Gradle 7.4.1, AGP 7.0.4, Kotlin 1.6.10, Huawei Publishing Plugin 1.3.3


Event description doesn't necessarly load

It seems that when editing an event, the description is not necessarly loaded or load too slowly so that the user may have "touched" it in between.
This was reported by Zendesk but also experienced by us. A deeper look is required to understand the conditions of reproduction & the causes .

Won't fix, event creation/edition is being reworked


[Feature] Split out the Airgap from cnf-testsuite main code and repository

Is your feature request related to a problem? Please describe.
The airgap code needs to be split out from the rest of cnf-testsuite. There is already a module, separating the entire airgap code from the main code will fix long running CI workflows.
Describe the solution you'd like
Split the airgap code from the cnf-testsuite main code and perhaps put it within it's own repository.
The airgap binary tests are taking over an hour to run on every commit and push to cnf-testsuite repository which will relieve development time when debugging and verifying CI workflows in github actions.

This issue is still relevant - Test Catalog group is discussing if airgapped support should be removed for CNTI test catalog

Airgap mode support was completely removed from testsuite.


[config] requesting to validate param names

I think it'd be good if the config checker were to validate the passed params names, and not silently ignore them. Otherwise it's too easy to make a typo (or like in this case https://github.com/microsoft/DeepSpeed/pull/773 use the invalid doc suggestion) and then waste a lot of time hunting for why things don't work (or worse - getting subtly bad results).
You did mention in the past that the validation wasn't done to enable easy experimentation, but as the project is starting to get adopted by the masses it's probably time to make things strict.
Perhaps for experimentation add a new flag validate_config which would be True by default and if disabled it'd not be strict.
Thank you.

This is a duplicate of an earlier https://github.com/microsoft/DeepSpeed/issues/653


Crunchyroll deletion link may no longer work

Backstory
Tried to delete Crunchyroll account and the provided link gave an error: Error - Sorry, an error occurred!
Data
name: Crunchyroll
url: https://www.crunchyroll.com/nuke

@justhereforthefood do you have the new deletion link?

Closing due to lack of response.

I've just got a confirmation from Crunchyroll support that the link no longer works and that you have to go through support at the moment to delete.
Relevant part of message below, I can forward the full email if necessary

Gintoki (Crunchyroll)
Aug 16, 2022, 7:42 AM PDT
Hi there!
...
Allow us to share with you that for this moment you can only delete the account through us (support tool) because for the moment the website to delete the account is not working right now for future updating. Like I told you while this happens you can delete the accounts through us the support team.

Thanks for coming back with updated info.

This link did work for me...
Is it working now?

The nuke link, you mean @clicky6 ?

The nuke link, you mean @clicky6 ?

Yes @tupaschoal


Quotes for default string values in docs

Right, thanks!
Any clue why the coveralls coverage count is decreasing by 4% with no code changes since the last check?

Nope. I will look into it.

Ok, it seems like the coveralls job doesn't wait for Travis tests to be completed before outputting an error. So by definition it will always start by failing --then it fixes itself.


Is there a way to allow shortcuts or alternate stroke orders?

For example, it's common to write 子 as only two strokes instead of three strokes, and to write the 女 component in 好 with only two strokes. Is it possible to make the quiz recognize these shortcuts?

It should be possible if there's another data source that lists all the alternative writings and maps them to the way makemeahanzi draws strokes. If there's a data source like that with an open source license that you know of please share it!

From what I understand, the Inkstone allows for some shortcuts for some common character components, but I'm not familiar enough with the code to understand exactly how it works. Would it be possible to follow a similar approach here?


Incompatibility with MineLittlePony

Mod Name
MineLittlePony
Mod Homepage
https://modrinth.com/mod/mine-little-pony
Minecraft version
1.21.1
Describe the bug
game crashes on startup with minelp installed
Steps to reproduce

Add the mods
Start the game
Crash on startup

Logs
https://mclo.gs/d2BC8t2
Additional context
Other mods by the same developer work without issues

issue fixed by minelp https://github.com/MineLittlePony/MineLittlePony/commit/c8709ea1b8c10464a67ad3bd82667f748cbc1100


The library crashed as soon as open the preview screen

Hello
I've read your readme and the library really seems very good. Everything looks fine but I have a little problem. My problem is that the library crashes as soon as I launch MatisseActivity.
I'm using the code from your read me and sample app. Following is the code snippet I'm using in my app.
private void pickImage() {
    Matisse.from(this)
            .choose(MimeType.ofImage())
            .theme(R.style.Matisse_Dracula)
            .countable(false)
            .maxSelectable(9)
            .imageEngine(new PicassoEngine())
            .forResult(REQUEST_CODE_CHOOSE);
}

When I call pickImage method, the app crashes. I was able to see the bottom toolbar of your preview activity (not sure of the name of the activity) and it crashed.
Can you please help me to fix this issue?
For your reference, I'm using Glide in my app to display images. Please let me know if this can make any conflicts with your library.
Thanks

@kennybuc please show your Error log...

@NicolasKun Hello, sorry for not respond promptly.
As far as I've checked, it doesn't show any details about the exception. I just found the logcat which is saying "uncaught exception". I'm not sure what exactly happened and I will check further if I get any exception details.

I was getting this error, in my case I have updated to Glide version 4 and I was using it as the ImageEngine, when I switched to Picasso the error went away.


Deno.bench

Would be good to add benchmarks for speed critical code, transform mainly. Works very much the same way as the native test runner.
<EMAIL_ADDRESS>

I'll get the ball rolling with an initial benchmark for transform!

It's worth noting that all local ESM is transformed on every request in dev. This would not provide worthwhile results?
In all prod environments (Deno, Deno Deploy, and eventually Vercel), the transforms will pre-transformed to static files, or cached. Maybe it's best to test against that?

I guess it would be like our e2e tests, as we would like to test the whole stack?


Fix typo

line199: fn balance_of(&self, account: &ActorId)  instead of "fn balance_of(&self, account: &ActorI"
Updated sections:

I found chines version have the same typo error

@DonaldJTrump2017  Thanks for your contribution!
The code change in this PR is still incomplete, there should be more code from the code repo. So I close this PR and assign the task to our team members.


Support for Images

First of all, thank you for this plugin. Being able to use Excalidraw from within vscode is an amazing thing :D
I'm guessing this is more a feature/update request. I've noticed there is no support for images in the plugin yet, but the webversion has them. This also means saved excalidraw files with images in them will load without images in vscode. This hinders me greatly as I use excalidraw frequently to make snapshots of coding work (in vscode,etc.) and annotate/color/marker the hell out of it. So, I'd love for this to be added/brought up to sync with the web version :)

Hey, thanks for the feedback!
I need to investigate if it is doable with the current state of the excalidraw API. I don't have much motivation and time to code outside of my working hours right now, but I really want to to update this api as soon as I can.


waypoint: remove an element using jquery has an issue

Challenge http://www.freecodecamp.com/challenges/waypoint-remove-an-element-using-jquery has an issue.
script tags appear as fccss

Thanks for posting an issue,
This is a duplicate of #2242 and others though in general try the following:
If you’re having trouble with JavaScript or jQuery challenges, do a hard refresh and it will fix them. (in Chrome: CTRL + Shift + R on Windows or CMD + Shift + R on mac)

Closing as duplicate #2242


Update ryujinx.json

Point to GreemDev's repo, as original is gone thanks to Nintendo.

Closes #1239

[x] I have read the Contributing Guide.

Superseded by https://github.com/Calinou/scoop-games/pull/1276. Thanks for the contribution nonetheless!


A notification exclusively for killing an NPC is required in such cases.

Why would this be needed? If you are in a multi-combat zone with auto retaliate on, you would not need to be notified on each kill.

Why would this be needed? If you are in a multi-combat zone with auto retaliate on, you would not need to be notified on each kill.

Because I want to loot the NPCs that I kill, I don't want to leave the loot on the ground (loot might despawn/yoinked by someone due to AFK). Isn't Idle Notifier's purpose to pursue AFK-Scape? So, a great example situation for this is Brutal Black Dragons (because it takes quite some time to kill one). Or any other NPCs you might AFK that takes time to kill one of them.

If that's the case, you can enable notifications in the Ground Items plugin and set your notification settings to only notify you when the client is not focused.

If that's the case, you can enable notifications in the Ground Items plugin and set your notification settings to only notify you when the client is not focused.

Sorry for my smooth brain but can you be more specific? In Ground Items plugin, "enable notifications" you mean which setting exactly? Would I need to list every loot item for every NPC? And I want the notifications regardless if the client is focused or not.

You can use either Notify for Highlighted drops if you have particular highlighted items you'd want to see, such as dragon bones perhaps, or you could also use the Notify tier option to receive notifications when receiving drops of a certain tier value, as configured based on your Low/Medium/High/Insane value price configurations.

You can use either Notify for Highlighted drops if you have particular highlighted items you'd want to see, such as dragon bones perhaps, or you could also use the Notify tier option to receive notifications when receiving drops of a certain tier value, as configured based on your Low/Medium/High/Insane value price configurations.

Well, thank you. Option 1 is rather tedious to do for every NPC vs. getting notified on each kill if you so wanted to with a simple tick box, option 2 is probably the workaround I'm going to use then, but it messes with my initial purposes for my already set item value ground items in the rest of the game, so I would need to change between "Off and low/med/high/insane". everytime I decide to do such activity.

Any update`?

There is a plugin hub plugin that notifies when your target dies. "Target Health Notifier".


lib.data: improve diagnostics for field access on array layout view

Fixes #837.

LGTM. The assumption behind #837 was that an object returned by the Signal constructor was an instance of Signal. This fix clarifies that it is in fact not the case, unless .as_value() is called.