carbonserver + grafana issue?

If i understood correctly, carbonserver is replacement to existing python-based graphite-web so we can feed whisper data directly to, for example, grafana?
I tried installing RC and using it with grafana, however

on adding grafana says "unknown error", and in log i see it's trying to access /metrics/find URL which throws 404 by go-carbon, ie:

t=2016-11-28T02:32:24+0300 lvl=info msg="Request Completed" logger=context userId=2 orgId=1 uname=lex method=GET path=/metrics/find/ status=404 remote_addr=<IP_ADDRESS> time_ms=5ns size=17945

Tried accessing /metrics/find with cURL and getting 301

Looks like grafana expects /metrics/find/ in URL (with trailing slash), however it throws 301 on such request, which grafana can't process:
❯ curl -v http://localhost:8080/metrics/find
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> GET /metrics/find HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 301 Moved Permanently
< Location: /metrics/find/
< Vary: Accept-Encoding
< Date: Mon, 28 Nov 2016 14:47:23 GMT
< Content-Length: 49
< Content-Type: text/html; charset=utf-8
<
Moved Permanently.

* Connection #0 to host localhost left intact

And this is with /metrics/find/:
❯ curl -v "http://localhost:8080/metrics/find/?query=carbon.*"
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> GET /metrics/find/?query=carbon.* HTTP/1.1
> Host: localhost:8080
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 400 Bad Request
< Content-Type: text/plain; charset=utf-8
< Vary: Accept-Encoding
< X-Content-Type-Options: nosniff
< Date: Mon, 28 Nov 2016 14:51:09 GMT
< Content-Length: 33
<
Bad request (unsupported format)
* Connection #0 to host localhost left intact

I'm not sure if this is grafana or go-carbon bug

It's not a complete replacement for graphite-web. It can only replace local graphite-web for CLUSTER_SERVERS needs.
If you want to have a replacement for graphite-web (also subset that's enough for grafana) you can get https://github.com/dgryski/carbonapi and point it to go-carbon's carbonserver.

Thanks, seems like i misunderstood purpose of carbonserver.
P.S. no plans to make go-carbon completely self-sufficient, including an API for external tools?

That might make sense for smaller single server setups. I'm assuming most go-carbon users run larger installations and need a more distributed architecture with loadbalancers, relays, multiple carbon backends, zypper (or multiple layers of graphite-web), carbon-api, grafana. Anyway, I'm not involved in go-carbon so I have no idea what the plans actually are, just my thoughts.

I also do not know plans of the author regarding that, but IMO running another binary is not a rocket science. Carbonapi has quite good development speed, so, including that into gocarbon is not an option. You need to run grafana as separate binary anyway...

I think that is sufficient to maintain the compatibility of go-carbon with carbonapi. Not sure what they are currently working together without carbonzipper

Is there any guidance on how to get this working.  Im trying to build an evaluation server for our product. I have go-carbon and grafana installed but it was not clear how to get carbonapi running.  looks like it requires carbonzipper? Is this true. I was hoping to build a single server so I could compare it to influxdb.

Yes, carbonzipper is required, as carbonapi repo states - "To use this, you must have a carbonzipper install, which in turn requires that your carbon stores are running carbonserver". You need to point carbonapi to carbonzipper, and carbonzipper to carbonserver.

@deniszh you don't need carbonzipper with go-carbon (at least rc version).
So, if you want to evaluate some stuff, install -rc go-carbon, carbonapi (if you're on debian/ubuntu you can use my packaging repo: https://github.com/rlex/carbonapi-deb)
My packaging repo includes systemd init as well, but if you want to start it manually, you can go with
/usr/bin/carbonapi -z=http://<IP_ADDRESS>:8080 -p 8082

where http://<IP_ADDRESS>:8080 is carbonserver address in go-carbon (available only in -rc version ATM). It's in this section of config:
[carbonserver]
listen = "<IP_ADDRESS>:8080"
enabled = true
buckets = 10
max-globs = 100
metrics-as-counters = false
read-timeout = "1m0s"
write-timeout = "1m0s"
scan-frequency = "5m0s"

Actually carbonzipper is not required for grafana to work. You can point carbonapi directly to carbonserver and everything except for a custom /info handler will work.

I'm trying to setup a monitor stack for a large cluster (expected metrics rate > 10,000,000 per minute).
I happen to come across this issue, and I would like to explain the architecture of my current setup, for those who are interested. If there are mistakes, please kindly point out.
The "official" graphite stack looks like this:
                     |-----------------|
                     | carbon-relay.py |
                     |-----------------|
                              |
        |---------------------+---------------------|
|-----------------|  |-----------------|  |-----------------|
| carbon-cache.py |  | carbon-cache.py |  | carbon-cache.py |
|  graphite-web   |  |  graphite-web   |  |  graphite-web   |
|-----------------|  |-----------------|  |-----------------|
        |---------------------+---------------------|
                              |
                     |-----------------|
                     |  graphite-web   |
                     |     grafana     |
                     |-----------------|

If you have even larger cluster, you can have multiple carbon-relay.py instances, as long as they use the same relay rule.
Every carbon-cache.py instance comes along with a graphite-web, graphite-web read metrics from carbon-cache.py's in-memory cache as well as local whisper files. There is another "higher level" graphite-web instance, which does not read any data from carbon-cache or local whisper files, it queries metrics from all configured upstreams, via CLUSTER_SERVERS option, and merge them. Finally, it provides render api's for grafana or other dashboards.
As you can see, all official graphite components are written in python, them have bad performance. Luckly, almost all components have third party re-implementation in c or go.
carbon-relay-ng and carbon-c-relay are replacement for carbon-relay.py, implemented in go and c. I'm currently using carbon-relay-ng. go-carbon is replacement for carbon-cache.py. carbonapi is replacement for graphite-web which is ready to serve data to grafana.
carbonlink provides the same function as carbon-cache.py's in-memory cache. So you can have the following arch:
                     |-----------------|
                     | carbon-relay-ng |
                     |-----------------|
                              |
        |---------------------+---------------------|
|-----------------|  |-----------------|  |-----------------|
|    go-carbon    |  |    go-carbon    |  |    go-carbon    |
|  (carbonlink)   |  |  (carbonlink)   |  |  (carbonlink)   |
|  graphite-web   |  |  graphite-web   |  |  graphite-web   |
|-----------------|  |-----------------|  |-----------------|
        |---------------------+---------------------|
                              |
                     |-----------------|
                     |  graphite-web   |
                     |     grafana     |
                     |-----------------|

You may note that, the graphite-web along with carbon-cache need not to be a full functional graphite-web, it only need a few api's to provide metric data to the higher level graphite-web instance, carbonserver does it.
                     |-----------------|
                     | carbon-relay-ng |
                     |-----------------|
                              |
        |---------------------+---------------------|
|-----------------|  |-----------------|  |-----------------|
|    go-carbon    |  |    go-carbon    |  |    go-carbon    |
| (carbonserver)  |  | (carbonserver)  |  | (carbonserver)  |
|-----------------|  |-----------------|  |-----------------|
        |---------------------+---------------------|
                              |
                     |-----------------|
                     |  graphite-web   |
                     |     grafana     |
                     |-----------------|

The next step, graphite-web is implemented in python, and it renders slow when metric volume grows, you may like to replace it with carbonapi. If you have just one go-carbon instance, it's ok to directly replace graphite-web with carbonapi. However, carbonapi is only capable to query data from one upstream, so, if you have multiple go-carbon instances, you should introduce carbonzipper, which will fetch metric data from multiple upstreams and merge them. carbonapi, in turn, querys data from carbonzipper.
Here is the final architecture:
                     |-----------------|
                     | carbon-relay-ng |
                     |-----------------|
                              |
        |---------------------+---------------------|
|-----------------|  |-----------------|  |-----------------|
|    go-carbon    |  |    go-carbon    |  |    go-carbon    |
| (carbonserver)  |  | (carbonserver)  |  | (carbonserver)  |
|-----------------|  |-----------------|  |-----------------|
        |---------------------+---------------------|
                              |
                     |-----------------|
                     |  carbonzipper   |
                     |    carbonapi    |
                     |     grafana     |
                     |-----------------|

Every thing except grafana is implemented in go, which makes OPS's life much easier. It's nightmare to deploy and manage python projects. Grafana is much more a frontend project, it manages dashboards.

We are using something similar to your drawing (now also with go-carbon instead of carbon-cache). I've done a talk about our architecture some time ago, you can have a look at slides:
http://events.linuxfoundation.org/sites/events/files/slides/booking-graphite-atscale-linuxconeur2k16.pdf

Your final architecture is fine, should work flawlessly. Grafana's backend is written in Go too btw.

@Civil Thanks for your slides! It's really valuable for me. We're at the very beginning of setting this monitoring stack, I just have the whole stack running, the next step is stress testing and disaster exercise, to prove this stack is suitable for our future environment. Your slides gives me a lot of reference and confidence.

@StephenPCG Did you implement the stack as you described it within this ticket? If yes, are there any problems / bottlenecks?

@alexanderlauster I didn't setup the exact stack, but with a simplified stack carbon-relay-ng -> (go-carbon+graphite-web)x6 -> graphite-web -> grafana, this setup was just a proof of concept, and for a simplified stress testing, to find out the relationship among metric volume, event volume and disk iops.
We're going to setup the stack I described in this month, and run a more detailed stress test.
Is there any problems? Since I haven't had this stack running in a production environment, I haven't came across any problems yet. But from some slides and videos found on the Internet, cluster re-balancing may be a complex work and have great burden.
Is there any bottlenecks? I think you will probably reach disk io limit before cpu and memory, if you are not using SSD RAID. In my stress test setup, I had 6 magnet disks, no RAID setup, running one go-carbon instance on each. With a small event rate (less then 3k metric points per second), the disk iops was the same as event rate. go-carbon does not merge metric points, it issues a write operation for each  point, and relies on underlying filesystem to merge write operations. When events rate kept growing up, disk iops stay at 3k (which is magnet disk limit), and filesystem started to merge write operations. dirty_ratio, dirty_background_ratio, dirty_expire_centisecs affect the filesystem cache, If you set a too small expire centisecs, or have to small dirty_ratio, the filesystem will not hold too many cache, and filesystem write won't catch up the incoming events. If you have expire centisecs set to 1 minute and large enough dirty_ratio for example, filesystem can cache and merge all write operations for one metric coming in in one minute, if the metric have 10s retention, it means 6 write operations can be merged into 1. But with larger expire centisecs and dirty ratio, you will loose more data on hardware failure. There is another interesting thing, "new metric rate". When a new metric received, go-carbon will create a new wsp file for that metric. The file size depends on retention setup. If file size is very large and new metric rate is very high, you may easily reach disk throughput limit.  In my stress test setup, a wsp file is about 800KB, on stress test startup, it created about 750K metrics, which corresponds to about 600GB wsp files, apparently 6 magnet disks can not accept so large data in a short time, go-carbon and carbon-relay-ng's cache quickly filled up and started to drop incoming metrics.
In short, you may probably be interested on these aspects when inspecting stack performance:

event rate (how many metric points every second)
metric volume (how many distinct metric series there, the more metric series, the more cache required)
new metric rate (how many new distinct metric series created every second)

What I didn't test in the previous stress test? I didn't test metric rewriting and aggregation, these two tasks may be CPU intensive. I will do these tests this month. I didn't try re-balancing a cluster (add or remove go-carbon instances), I will try it later.
Hope these information helps.


macOS 11

[ ] Window titles should now be left-aligned and larger.
[ ] Tabs in the preferences window should be centered.
[ ] Squircle app icon.

Here's an example of what the preferences windows looks like:


Dev Lite Test: PhET Desktop App 2023-06-14

@kathy-phet, @oliver-phet, and @KatieWoe:  There is a new update of the PhET Desktop App for Windows and MacOS available at https://phet-dev.colorado.edu/weddell/dist/2023-06-14/.  This was built based on a request from @RVieyra, and the primary motivation for updating is to pick up the most recent sims and a bunch of translations that have been submitted since the last build, which was from May of 2022.  There was a failed run at this, see https://github.com/phetsims/qa/issues/954, this is the 2nd attempt.
QA, please:

[x] Verify that Greenhouse Effect, Calculus Grapher, Geometric Optics, and any other sims that you're aware of that have been published for the first time after May of 2022 are present in the sim.
[x] Verify that some sims are present for the tw, sw, and az locales and that they run correctly.  You don't need to test all sims for these locales, just a handful.  These are locales for which there have been a lot of translations submitted over the last year, so the objective here is to make sure that the desktop app has picked up the recent translations.

Testing:

[x] Tester = KW, Platform = Win 11, Time = 3
[x] Tester = NS , Platform = macOS 13.4, Time = 2.5

Greehouse Effect is listed as an available sim in Java despite now being in HTML (that version is also available) and the image for the java version is missing. Since I don't have Java on this device I'm not sure if the java version works.

Thanks QA team - I'll follow up on the specific issues.  Closing this one.


MRI compatibility for Pdf417

I'm trying to make this gem as cross platform as possible so I decided to switch to Hoe to create the gems since it's not really stable yet and I don't want people using it directly.
In this PR I implemented Pdf417 in MRI using the C lib.
Just FYI, next up on the todo list is to be able to generate DataMatrix barcodes in Java either by removing the semacode dependency or porting semacode in Java.

Is there any update on this? I'd like to generate PDF417 barcodes using Ruby 2.3, and I'd prefer to just use Barby, since that's what I use for the other formats I support.


amdgpu driver failed to initialize

Issue description
Module amdgpu is loaded but not used. lsmod shows
amdgpu 0

module can be loaded and unloaded. 2 monitors configuration not works. Consoles from 1 to 6 are empty, only 7 console with X is active.
Steps to reproduce

Updated system from 18.09.1571.7795a7ad5f0 (Jellyfish) to 18.09.1676.7e88992a8c7 (Jellyfish)
Reboot to new system
Driver not initialized. 2 monitors configuration not works. Consoles from 1 to 6 are empty, only 7 console with X is active.

No hardware configuration was changed in /etc/nixos/, only added some software to list of packages.
Technical details
This is working configuration
 - system: `"x86_64-linux"`
 - host os: `Linux 4.14.86, NixOS, 18.09.1571.7795a7ad5f0 (Jellyfish)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.1.3`
 - channels(root): `"nixos-18.09.1676.7e88992a8c7"`
 - channels(razor): `""`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

To get broken one I need to reboot

Hmm, the only changes between those two revisions that seem relevant are stable kernel bumps.

@fpletz may changes in systemd or in some service be the reason?

I see some changes in https://github.com/NixOS/nixpkgs/compare/7795a7ad5f0...7e88992a8c7#diff-57c9ee2975e830e72ffa9f3b1e3f10b2R13

But I dont get what they mean and how it can influence to amdgpu driver initialization.

I've rolled back nix-channel and amdgpu driver works. So now /etc/nixos are fully identical for working and broken configurations. The difference is nix channels generation. The previous generation works, but not latest.
# nix-env -p /nix/var/nix/profiles/per-user/root/channels --list-generations
   1   2018-11-25 18:45:20
   2   2018-11-25 21:05:03
   3   2018-11-27 16:09:11
   4   2018-11-27 16:21:43
   5   2018-12-06 01:55:17
   6   2018-12-07 17:49:25   (current)
   7   2018-12-15 20:10:26

@NeQuissimus hello, looks like it is yours commit.

Thank your very much for looking into the issue yourself. There has since been a new kernel bump on the 18.09 branch to 4.14.89: 5bfaa294ea375e1b2759e90c88ec50335bdbcc9a
Does this maybe fix your issue?

Sadly 4.14.89 from https://github.com/NixOS/nixpkgs/commit/5bfaa294ea375e1b2759e90c88ec50335bdbcc9a did not resolve it for me
Dec 18 12:51:28 fangorn kernel: Linux version 4.14.89 (nixbld@localhost) (gcc version 7.3.0 (GCC)) #1-NixOS SMP Mon Dec 17 08:28:56 UTC 2018
...
Dec 18 12:51:29 fangorn kernel: amdgpu 0000:01:00.0: Direct firmware load for amdgpu/polaris11_k_mc.bin failed with error -2
Dec 18 12:51:29 fangorn kernel: mc: Failed to load firmware "amdgpu/polaris11_k_mc.bin"
Dec 18 12:51:29 fangorn kernel: [drm:gmc_v8_0_sw_init [amdgpu]] *ERROR* Failed to load mc firmware!
Dec 18 12:51:29 fangorn kernel: [drm:amdgpu_device_init [amdgpu]] *ERROR* sw_init of IP block <gmc_v8_0> failed -2
Dec 18 12:51:29 fangorn kernel: amdgpu 0000:01:00.0: amdgpu_init failed
Dec 18 12:51:29 fangorn kernel: amdgpu 0000:01:00.0: Fatal error during GPU init
Dec 18 12:51:29 fangorn kernel: [drm] amdgpu: finishing device.
Dec 18 12:51:29 fangorn kernel: [TTM] Memory type 2 has not been initialized
Dec 18 12:51:29 fangorn kernel: amdgpu: probe of 0000:01:00.0 failed with error -2

@fpletz 5bfaa294ea375e1b2759e90c88ec50335bdbcc9a does not work.

trying 4.19.9 with boot.kernelPackages = pkgs.linuxPackages_latest didn't work either

Looks like linux-firmware might be out of date: my broken amdgpu.ko references firmware=amdgpu/polaris11_k_mc.bin which AFAICT was added in https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=6cca1381f328e7df55ae8bb8ac515b945d35f9f5.

Yep, updating the firmware derivation to use the above commit worked for me.

Thanks! We've bumped the firmware on master a few days ago anyway. I'll backport to 18.09 to fix the issue.

Ok, the firmware updates shouldn't be that intrusive. Backported to 18.09. Thank you for reporting and debugging this! :+1:

fbb7dbdb95d04f1517ec8011a3332a8c4c0e86e6 commit works. Thanks.


Update Contribution Guidelines

Requirements:

Exclusively work with CONTRIBUTING.md
All the images/clips used should be inside ./readme_assets/contributing/
Divide the Guide into two sections

# A. Setting up the Project

1. Fork
2. Clone
3. Move inside the folder
4. Check Remotes
5. Add Remote to Upstream to pull changes from the original repo
6. Open VS Code
7. Run Live Server [Install it from Extensions Marketplace if not done already]

# B. Contributing to the Project

1. Pull the new changes
2. Make a feature branch
3. Do the changes
4.  Stage them
5.  Commit
6. Push it to the forked remote
7. Compare it with the desired branch
8. Make PR

# C. Instructions for PR
- Title should be brief and accurate
- Refer the issue
- Description is must. Should be in bullet points, short phrases
- Clips/snapshots before and after changes

# D. General Guidelines:

( Check my pinned message on slack for the content)

For the steps like forking, cloning, raising a PR add gifs (i.e. Record Short clips using OBS Studio and convert them into GIF)
Check my pinned message on slack for detailed content
The above text inside the block is just a sample. DO NOT DIRECTLY COPY PASTE. It should be elaborated_
Remove the Topmost Section, Broken Gif and Illustration with a centre aligned image with a text over it "Contribution Guidelines)

May I add the gifs?

pls assign me this issue.

It's been 2 days @ishitakapoor26. This is a really simple issue.  You have 1 more day for this

It's been 2 days @ishitakapoor26. This is a really simple issue. You have 1 more day for this

okay

Can I work on this issue under LGM-SoC ?

@Amrutha1101  Yes, you can work on it.

Can you re share the pinned message here for detailed content as slack isn't used now?

@Amrutha1101 https://app.slack.com/client/T022A4RL16V/C0246EFQG4T
Pinned message can be found here.

Thanks

I guess the message isn't visible though it's pinned

I guess the message isn't visible though it's pinned

Leave that. I'll take care of it. Meanwhile, you can complete the rest @Amrutha1101

Common Guidelines:
A) Pull Request:

All Pull Requests should have a single commit. In case of multiple commits, please perform a rebase and make a squash commit before giving the Pull Request
The Pull Request title should be appropriate and relatable to the issue under which it was assigned to the participant
Pull Requests without a description would often not be reviewed. The work done in the PR should be elaborated in phrases using bullet points. The corresponding issue should be linked in the following manner fixes #issue_number.  For Example: fixes #646 . This is usually the first line for the PR description before the synopsis of the work done. Lastly, relevant screenshots/short clips of the changes due to the code fix/update should be attached.

Sample PR Description
Fixes #640
Work Done:

Fixed Responsiveness bug in the MOOC Section of the Education Page
Made the Favicon more optimized
...
...
...

Relevant Screenshots/Gifs

After the PR is raised, refrain from putting up messages like "Please review this PR", etc either on the corresponding issue, this slack workspace or the PR itself. All the project maintainers are full time research scientists/software developers and would review the PR within 24-72 hours of it being raised as per their convenience.
Not every PR would be merged directly. In majority of the scenarios, we would be offering some additional suggestions which are to be incorporated in the same PR with a squash commit.
Look out for possible merge conflicts
The code added should be well documented (Add Comments)
Indentation/Linting of the code should not be tampered with
Make sensible variable names. For example, card1 is quite ambiguous but education_card implies what that variable is declared for

B) Issues

Whenever a participant raises an issue, by default it would be assigned to that participant due to obvious reasons. Please do not spam the issue thread by blindly commenting "I want to work on this". "Assign me this issue" etc. None of these requests would be entertained
You are welcome to comment on the issues raised by the project maintainers i.e. me and @Anush Bhatia[Project Admin] for claiming them.
Please be patient for the issues to be evaluated and/or assigned. All the project maintainers are full time research scientists/software developers and would review the issue comments within 24-36 hours of them being posted as per their convenience. Refrain from putting up messages like "Please review this PR", etc either on the issue or this slack channel.
An issue would be assigned to a participant for a minimum of 1 day and a maximum of 3 days. If the tenure of a particular participant is not over please do not spam the issue thread by writing, " I am interested" etc. You are welcome to do so if the participant has not met the requirements with around 12 hours remaining for their deadline.
Refrain from putting up messages like "Thank You" anywhere in the issue or PR threads since we would get unnecessary notifications for those.
Feel free to suggest your opinions on the already raised issues
All participants are welcomed to suggest new features/bug fixes/improvements and raise new issues for those. However, the assignment would be done once approved by either of the project maintainers or the mentors.
Make use of this slack channel for doubt clearing and discussion of concepts related to the work.

C) Slack

Please put the entire text in a single message. Use Shift+Enter to move to the next line and Enter to send the message.
For replying to a particular message, please do so in threads
Avoid giving your intro for asking doubts. Keep the discussions concise.
Unless there is a personal issue, no DMs would be entertained by the project maintainers. All project related conversations should be kept exclusively to the respective slack channels.

@Amrutha1101 I have pasted that message here


Don't sanitize IMarkdownString when supportHtml is false

For the hover provider playground example, passing any value that looks like a tag results in that value not being displayed properly.
When supportHtml is falsy I would expect the hover contents to be rendered as-is without any sanitization.
For example, the below IMarkdownString[] results in nothing being shown in the hover provider.
contents: [
   { value: '<mem>' },
]

With this in mind I'm thinking the answer to the comment in the code below is yes:
https://github.com/microsoft/vscode/blob/bd25c294cd7d5d0fbc347be77a76d9aef0685b5c/src/vs/base/browser/markdownRenderer.ts#L218

Closing and opening in monaco-editor package


[Bug] flash of previous buffer session is autorestored

Hi,
Been looking into replacing my current session plugin so I can better replicate the https://github.com/emacs-dashboard/emacs-dashboard by listing my sessions and was also looking for something that handled git branches nicely which this does.
One rather frustrating issue I've encountered though is that when auto-restoring a session there is a brief flicker as either my start screen or the first empty buffer is briefly shown before it then auto restores the session. I've tried to get used to it but the flicker is maddening unfortunately.
I had a look through the code and compared it with things like autosession and possession.nvim etc. and noticed the cause I believe to be the line below.
https://github.com/olimorris/persisted.nvim/blob/325cda4fb406601929fbc2084816dc5e49d5e5aa/lua/persisted/utils.lua#L68
When this plugin restores a session it uses vim.schedule rather than executing the command immediately which means it defers it and vim the loads the start buffer (or the dashboard) before eventually getting to the autorestore causing the flicker. I can see that removing the scheduling does make it instantaneous but there is a brief flicker since the first autorestore should not happen whilst vim is still starting up but should be delayed till VimEnter I believe.
Any chance you'd be up for changing how auto restoration is handled to avoid the flicker? is it something that you've seen? I'm a bit surprised no one else has mentioned this in the closed issues AFAICT

👋🏼 @akinsho!
You've raised a really good point here. Historically, the vim.schedule existed due to the issues encountered in #12. At least that was our remedy for it at the time.

I can see that removing the scheduling does make it instantaneous but there is a brief flicker since the first autorestore should not happen whilst vim is still starting up but should be delayed till VimEnter I believe.

I'll explore some options tonight for how this can be resolved and this is really helpful. Also, always open to PRs.

@olimorris much appreciated. I'll definitely be revisiting this eventually as my sanity is going 🤣, but I've just had someone open like 5 issues on a repo of mine so think that's going to be the rest of my free time this week 😞 (guess it karma as I've opened these two on your repo 😆)


Strip injection in token2string

This hook throws an error if the term it is passed is not directly a token; this PR allows it to strip off a single layer of injection.
Fixes https://github.com/runtimeverification/k/issues/1038 - the test case added here is directly derived from the module in that issue.

Seems to just have been resource exhaustion on Jenkins last night. No code changes needed to make it go through.


max_global_plan_lookahead_dist problem when going in reverse direction

First things first... thanks by the awesome planner it is the most adaptable planner i have seen.
About the problem:
When i go forward the teb cut the total distance planned by the max_global_plan_lookahead_dist param. But, when i go in the reverse direction, the only thing that limit the planner is the costmap itself, making a plan very long to my processor (and causing it to miss some control loops, i guess).
Thanks, again.

Thanks for the feedback!
I investigated the relevant part in the code again, but I cannot find the cause for your issue.
The local (reference) subset of the global plan is extracted in TebLocalPlannerROS::transformGlobalPlan(...).
Hereby the Euclidean distance is compared with max_global_plan_lookahead_dist independent of the direction. Can you please provide me with more details or check whether I missed something?
Note, the lookahead distance does not bound the length of the local optimized plan but just the part of the global plan from which the current goal is inferred. For instance if you have a large bound on the minimum turning radius, your trajectory might be really long in order to accomplish the task.
We could provide an upper bound on the dimension of the optimization problem by specifying max_samples (introduced recently in 217616d9a3fa39). The planner does not add new samples if the maximum number of samples is reached leading to a coarser discretization and hence approximations of the robot motion. Another drawback of providing a relatively low number of max samples is that obstacles might transit between two consecutive samples/poses since we are currently not investigating the segment between each two poses but only the poses itself for keeping a minimum distance to obstacles. I think it would be really interesting to implement both and do some benchmarks in the future.

I was investigating the issue to and maybe i have a lead:
Its seems that the teb make the bound of the distance planned using the subset of poses of the global plan.
But in my case this dont work, because i m using a very simple global planner (the carrot planner) that publish  the pose as plan = [initial_pose, target_pose]..... So the teb cannot make any subset that limit the distance.
Since that theory i discover that teb wasnt cutting any plan (forward or backward), what was limitating the forward plan was the costmap. I didnt seen that before because my robot is big and is deslocated from the center of the map...
By now i made an workaround making the teb planner publish the plan = [initial_pose,intermediate_pose] and keep constantly updating the plan..
Now i think I have two choices:
1- use a better global planner, but in this case i have to solve the problem the teb almost dont run bakwards, it always maneuver and then go forward and close to the goal maneuver again..
2 - make an commit to teb that is will make an interpolation with the global plan (with the near two poses) in the max distance asked.
Can you point me in the right direction?


ignore entity without translatable title

Hello,
I currently have 2 languages in my entity, arabic which is the main locale and english. When I move to the english locale, I wish to retrieve from the database the entity only if said entity has an english version of the title attribute.
Currently when I query with locale english, my entities are all retrieved and the title is simply set to null or empty, and so in my site I get these entities with no text or title appearing.
I am sure this has been implemented or solved but I cannot find out where or how. Please help.

query hint with inner join would solve that

I tried it with true, 1, 0, all the combos I can think of. It is not working for me. I have a translatable class, and I am using a2lix forms (not sure if those details are helpful) my query is:
$em = $this->getEntityManager();
$qb = $em->createQueryBuilder();
    $qb->select('p')
            ->from('BackendPageBundle:Page', 'p');

foreach ($keys as $key) {
$qb->andWhere($qb->expr()->in("p." . $key, ":" . $key))
->setParameter($key, $data->get($key));
}//dynamic conditions
$qb->orderBy('p.' . $order[0], $order[1]);
$query = $qb->getQuery();
return $query->setHint(\Gedmo\Translatable\TranslatableListener::HINT_INNER_JOIN, TRUE)->getResult();
And yet I am still getting empty titles.

Ok so I should have used the translation walker hint before the translatable listener hint otherwise the latter will not work. The documentation was not very clear on it, I read the code to figure that one out. I will close this issue.


feat: allow usage of a environment variable or secret for sensitive params

Hello,
Created this PR to solve issue #13.
Added possibility to set bindPassword from environment variable or docker secret (filesystem /run/secrets/my_secret).
No breaking change.

Hi, @thpiron
Thanks for your PR.
I think this feature must support almost every available parameter. Unfortunately, for this, a lot of work is needed.
I started a draft of what I think this feature should be like in this branch: feat-support-multiple-conf-sources.
Feel free to propose any changes you think are pertinent.

Hello, I don't really think that put everything in secrets is a good idea. It's only useful for sensitive data (ie passwords, key etc).
And this would break the possibility to have multiple ldapAuth middlewares with different configuration as the secret must be on the traefik container, so can't be duplicated.
That why I put the possibility to change the environment variable / secret names for the bindPassword.

It's only useful for sensitive data (ie passwords, key etc).

At some contexts the server, base and bindDN can also be sensitive data.

And this would break the possibility to have multiple ldapAuth middlewares with different configuration as the secret must be on the traefik container, so can't be duplicated.

But I agree that we must preserve the multiple usage of ldapAuth in different services.
Despite of this, create a custom parameter to each of these values doesn’t make sense.
@fcinqmars what do you think about this?

I agree with @thpiron that normally secrets should only be used for sensitive values like credentials though I have seen them used more broadly.
I don't think that server, base and bindDN necessarily qualify for secrets. From what I have seen, most LDAP servers are configured to allow any LDAP users to read the directory anyway. It usually is enabled by default. If the security controls are proper, knowing that information shouldn't matter in my opinion.
Personally, I would only put what needs to be secret in the secrets.

Personally, I would only put what needs to be secret in the secrets.

So are we talking about bindPassword and cacheKey?

That why I added the possibility to change the environment variable / secret names for the bindPassword.

Should this possibility exist for both these parameters or only for bindPassword?

Yes my bad,  it should be possible for both secrets, I'll update the branch to add this.

Added possibility to change label of cache key secret.
Rebased on main and fixed some conflicts, ready to be reviewed for merging.

Thank you both for the review, it should be way better now.

are there plans to implement this PR in the future?


Add Atlanta International School

Add Atlanta International School. The emails are formated as follow (Firstletter of<EMAIL_ADDRESS>The website is  https://www.aischool.org/page.

@McTschecker Pull request merged. Please notice that free educational license for JetBrains tools is for high and higher schools students, i.e. those who are over 13 of age. Thank you!


React warning related to getSnapshotBeforeUpdate()

I'm getting up to speed on this library and in my small test app I'm seeing this warning:

Warning: BillboardChart: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.

I see a couple of recent issues and PRs related to this area of the lib and I'm not sure if there is something I'm missing or not. Should BillboardChart be implementing componentDidUpdate?
├─<EMAIL_ADDRESS>└─<EMAIL_ADDRESS>

Also seeing this:

BillboardChart.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.

They may have added in warnings to guide developers, but there should be no runtime impact, just console noise in development.
If I get some time I'll see if I can refactor things to eliminate the noise.

Should be resolved with 1.5.6.

Should be resolved with 1.5.6.


Fix broken link in README

Issue #, if available:
Description of changes:
Fix outdated link.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

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

Comparison is base (d097bb9) 41.44% compared to head (16ed338) 41.44%.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop      #76   +/-   ##
========================================
  Coverage    41.44%   41.44%
========================================
  Files          246      246
  Lines         8440     8440
  Branches       862      862
========================================
  Hits          3498     3498
  Misses        4683     4683
  Partials       259      259

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


Add Quidel Ansible and params config for accessing the S3 bucket

Description
Feature:
Adds the necessary Ansible vars/vault entries plus the prod params config so
that the indicator can interact with the S3 bucket.
Changelog
Itemize code/test/documentation changes and files added/removed.

Update prod params.
Add Ansible bucket name variable.
Add Ansible variable pointers to vault.
Add Ansible Vault variables.

@jingjtang I also removed the email settings. I made an assumption that we aren't checking the mail account anymore, but do those need to stay in the params?

@jingjtang I also removed the email settings. I made an assumption that we aren't checking the mail account anymore, but do those need to stay in the params?

@jingjtang I also removed the email settings. I made an assumption that we aren't checking the mail account anymore, but do those need to stay in the params?

The email settings are not needed anymore. They should be removed from params settings.

@jingjtang I also removed the email settings. I made an assumption that we aren't checking the mail account anymore, but do those need to stay in the params?

The email settings are not needed anymore. They should be removed from params settings.

@jingjtang If it looks good to you I think this is ok to merge now.

@jingjtang If it looks good to you I think this is ok to merge now.


Add event dinamically

Sorry, can i ask an example on

how to add an events dinamically, because the method setEvent in my code doesn't work
set defaut color for category

thanks

According to documentation :

setEvents : It replaces events !
addEvents : It just adds events (it not replaces events)

Finally you must always call again the init function (documentation : It must be called after any modification to re-draw the calendar)
To fix a category color, use this function setEventCategoriesColors and again call the init function.
Example to add some events is here and the code is here
Full example not tested but may work according to the documentation :
var now = moment();

// Requires a

var calendar = $('#calendar').Calendar({});

// An event copied from the Simple example documentation (https://github.com/ArrobeFr/jquery-calendar#simple-example)
calendar.addEvents([
   { // An event on the current week on Wednesday from 10h to 12h
   start: now.startOf('week').isoWeekday(3).startOf('day').add(10, 'h').format('X'),
   end: now.startOf('week').isoWeekday(3).startOf('day').add(12, 'h').format('X'),
   title: 'An event title !',
   content: 'Hello World!
Foo Bar
Wow this text is right aligned !
',
   category: 'A test category name'
   }
]);

// Turquoise color for the category of the event added
calendar.setEventCategoriesColors([
   {
      category: "A test category name",
      color: "#00838F"
   }
]);

calendar.init();


typo in readme example

Invoke-InveighUnprivileged -ConsoleOutpuy Y -FileOutput Y -RunTime 30
"Outpuy"
Not a big deal, just thought I'd mention

Fixed, thanks!


Update x64-calling-convention.md

syntax highlighting example return values code

@TylerMSFT
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off

@wesinator , love your alias tagline, by the way. Thanks for improving this topic today, one PR at a time :-)


Find out how to update forked Repo

[ ] Lennard checks Github Website
[x] Fabian checks GitKraken

Create pull Request from Origin Repo to forked repo with gitKraken

Create pull Request from Origin Repo to forked repo with the Github Website:
https://adrientorris.github.io/github/how-to-update-a-forked-repository-from-the-ui-on-github


#add layerTypes props handler, and GMapLayers view

Hello, i have some issues for show google maps layers like a https://developers.google.com/maps/documentation/javascript/examples/layer-traffic or
https://developers.google.com/maps/documentation/javascript/examples/layer-transit

Thank you!!!
Could you add a few words to Readme about.

Added little description about layerTypes props to Readme

In npm<EMAIL_ADDRESS>Sorry for the delay.


Unrecognized field "title" not marked as ignorable

I'm using Jersey and Jackson for JSON mapping. I tried with @JsonIgnoreProperties(ignoreUnknown=true) , but it didn't work and it still throwing this exception:
Unrecognized field "title" not marked as ignorable
Any ideia?

Jersey and Jackson are java libraries, right?
I don't know how your REST API behaves, so I have no idea.
If you can paste a log from curl, I might be able to say something.

I saw that it's trying to save the hole selectedObject instead of originalObject.  selectedObject has another properties different from my model, then it's throwing this error. I need to take only the origininalObject.
But another problem comes... how to show the originalObject back to selectObject...

Use callback? http://ghiden.github.io/angucomplete-alt/#example7

Now it's always showing "no results found"

All I need is your API response and your js code.
Without it, I can't debug.
Or please study all the examples first and come back to me.
I don't think your case is particularly unique.

Oh i saw it in your example:
$scope.countrySelectedFn9 = function(selected) {
if (selected) {
$scope.countrySelected9 = selected.originalObject;
} else {
$scope.countrySelected9 = null;
}
}
You could put these in JSFiddle or something, because I needed to inspect your code hehe.

Dev console is your friend when it comes to js development.
If your issue is gone, please close it.


entrypoint.sh: don't upgrade pip

Possible solution to #76.

seems to be working in https://github.com/gazebosim/sdformat/pull/1446


Updated documentation comments

In reference to #3.

Moved function description comments to header files
Corrected tcp_network_manager description; return type is bool not void
Regenerated documentation

Hey Thanks for the PR. Can you remove the generated html files? I will handle that on end!

Can do!

Hey there are still changes in docs folder.

My mistake. I thought you only wanted the HTML files removed

Hey, I think you messed up the commit, you need to roll back the commit and then just add the header changes to the commit.

Ah my mistake. Will fix.

Just for clarity, you want me to add a new line to the end of each of those files, correct?

ping


Driving phase - route and encounter data should be used to generate course

After successfully simulating a route, players should then have the characteristics of that play-through reflect upon the driving phase in the following areas:

planning phase
driving phase

distance traveled
length of the course

launch velocity
initial speed parameter

encounters
obstacles/events

gravitational forces
track perturbation values

total transit time
target time to finish

If I'm being honest with myself, I'm not entirely thrilled with how the gravitational forces map to driving phase conditions as-is, but there's potential for some interesting stuff


refactor: change findAll methods to findAllComponents

Related issue

Closes #1314
Scope of work
findAll method changed to findAllComponents
Checklist

[x] No commented blocks of code left
[x] Run tests and docs
[x] Self code-reviewed

If applicable:

[x] I followed composition rules for my component
[ ] I tested the component in most common device sizes (can be tested in Storybook from viewport addon in top menu)
[x] I accept Individual Contributor License Agreement

Thanks


Add support for parsing TypeScript files

Switch from acorn to @typescript-eslint/parser for parsing JavaScript and Typescript files.

@CharlieIGG I didn't mean to steal your thunder. This also includes your tests. Tests are passing and it seems like we can even re-use the existing parse-logic we had with acorn-walk since the ASTs are compatible, which I quite like.

👏


Memory leak when interacting with a smart contract resulting in node crashing

Description
Besu 22.4.3
When performing a certain smart contract function call the node eventually crashes due to what seems like a memory leak.
The this error keeps looping .
| vertx-blocked-thread-checker | WARN  | BlockedThreadChecker | Thread Thread[vert.x-worker-thread-7,5,main] has been blocked for 63767 ms, time limit is 60000 ms
eventually the node gives the error "java.lang.OutOfMemoryError: Java heap space"
The transaction is not even submitted. This happens when the node simulates the transaction.
Exception (Thread Block)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]: 2023-01-26 12:32:04.790+00:00 | vertx-blocked-thread-checker | WARN  | BlockedThreadChecker | Thread Thread[vert.x-worker-thread-7,5,main] has been blocked for 63767 ms, time limit is 60000 ms
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]: io.vertx.core.VertxException: Thread blocked
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at java.base@11.0.17/java.util.TreeMap.getEntry(TreeMap.java:357)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at java.base@11.0.17/java.util.TreeMap.get(TreeMap.java:277)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.worldstate.UpdateTrackingAccount.getStorageValue(UpdateTrackingAccount.java:203)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.gascalculator.BerlinGasCalculator.calculateStorageCost(BerlinGasCalculator.java:165)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.operation.SStoreOperation.execute(SStoreOperation.java:64)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.EVM.lambda$executeNextOperation$0(EVM.java:87)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.EVM$$Lambda$1415/0x0000000840728c40.execute(Unknown Source)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.tracing.EstimateGasOperationTracer.traceExecution(EstimateGasOperationTracer.java:30)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.EVM.executeNextOperation(EVM.java:81)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.EVM.runToHalt(EVM.java:74)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.processor.AbstractMessageProcessor.codeExecute(AbstractMessageProcessor.java:161)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.evm.processor.AbstractMessageProcessor.process(AbstractMessageProcessor.java:173)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.mainnet.MainnetTransactionProcessor.process(MainnetTransactionProcessor.java:485)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.mainnet.MainnetTransactionProcessor.processTransaction(MainnetTransactionProcessor.java:397)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.mainnet.MainnetTransactionProcessor.processTransaction(MainnetTransactionProcessor.java:146)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.transaction.TransactionSimulator.processWithWorldUpdater(TransactionSimulator.java:217)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.transaction.TransactionSimulator.process(TransactionSimulator.java:160)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.transaction.TransactionSimulator.process(TransactionSimulator.java:108)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.EthEstimateGas.response(EthEstimateGas.java:81)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.api.jsonrpc.execution.BaseJsonRpcProcessor.process(BaseJsonRpcProcessor.java:42)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.api.jsonrpc.execution.TracedJsonRpcProcessor.process(TracedJsonRpcProcessor.java:41)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.api.jsonrpc.execution.TimedJsonRpcProcessor.process(TimedJsonRpcProcessor.java:45)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.api.jsonrpc.execution.JsonRpcExecutor.execute(JsonRpcExecutor.java:91)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.api.handlers.JsonRpcExecutorHandler.lambda$handler$6(JsonRpcExecutorHandler.java:76)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//org.hyperledger.besu.ethereum.api.handlers.JsonRpcExecutorHandler$$Lambda$723/0x000000084052bc40.handle(Unknown Source)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.ext.web.impl.BlockingHandlerDecorator.lambda$handle$0(BlockingHandlerDecorator.java:48)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.ext.web.impl.BlockingHandlerDecorator$$Lambda$1126/0x00000008406a2c40.handle(Unknown Source)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.core.impl.ContextImpl.lambda$null$0(ContextImpl.java:159)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.core.impl.ContextImpl$$Lambda$1129/0x00000008406a4040.handle(Unknown Source)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.core.impl.AbstractContext.dispatch(AbstractContext.java:100)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.core.impl.ContextImpl.lambda$executeBlocking$1(ContextImpl.java:157)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.core.impl.ContextImpl$$Lambda$1128/0x00000008406a3840.run(Unknown Source)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.vertx.core.impl.TaskQueue$$Lambda$294/0x0000000840410440.run(Unknown Source)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at java.base@11.0.17/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at java.base@11.0.17/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at app//io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
Jan 26 12:32:04 ip-10-203-1-28 besu[575717]:         at java.base@11.0.17/java.lang.Thread.run(Thread.java:829)

Can you provide the exact RPC call you are using? Might be related to the work that @daniellehrner is doing to fix some RPC calls.

This error is not related to the OOM while tracing a block. This issue occurs while calling eth_estimateGas.
@calmacfadden Could you provide more details what type of transaction you are sending? From the log output I can see that it seems to be stuck somewhere. But I cannot say what is causing it.

I have not been able to re-create the issue on a fresh contract, but I have a buggy contract which was broken during a proxy upgrade.
The contract was deployed which has a function referencing a struct. The struct contained a bytes32 which was never used directly used but lots of the Mydata structs were added to different mappings in the contract.
The bytes32 data field was accidentally removed from the struct during an upgrade.
struct Mydata {
   uint256 value,
   string name,
   bytes32 data
}

This was upgraded to:
struct Mydata {
   uint256 value,
   string name
}

Putting the bytes32 value back into the struct and upgrading the contract again seems to have fixed the issue, but in reality the contract shouldn't be crashing the node when something is wrong with the contract.
Some more information:
The max gas for the transaction and block are set to the max possible value. So possibly the contract is caught in some loop and consumes all the memory on the server?

@calmacfadden Did you specify -Xmx Java option to your Besu node ? Otherwise, what is the RAM size on the machine you 're doing your tests ?
I don't know if is possible de share the whole process to reproduce, then I can generate a heap dump and analyse it. We'll need the buggy contract and the called function.
The thread is blocked on getting storage values from disk on SSTORE operation

No im not using -Xmx
Ill try and recreate it again as i currently fixed the contract.

As we cannot reproduce from our side, I suggest to close this issue and reopen it if you notice the issue again with the fixed version of your contract.


Convert HTML Entities: I have test cases wrong, but my function returns expected outputs

Describe your problem and - if possible - how to reproduce it
I have most test cases wrong, but my function returns expected outputs in Convert HTML Entities challenge. I noticed that in "running test window" for example instead of
convertHTML("Hamburgers < Pizza < Tacos") should return Hamburgers < Pizza < Tacos.

it is showing
convertHTML("Hamburgers < Pizza < Tacos") should return Hamburgers &lt; Pizza
&lt; Tacos.

My code:
function convertHTML(str) {
  const entities = {
    "&": "&",
    "<": "<",
    ">": ">",
    "\"": """,
    "'": "'"
  };
  let converted = "";

  for (const char of str) {
    if (entities[char]) {
      converted += entities[char];
    }
    else {
      converted += char;
    }
  }

  return converted;
}

Add a Link to the page with the problem
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/intermediate-algorithm-scripting/convert-html-entities
Tell us about your browser and operating system

Browser Name: Chrome
Browser Version: 67.0.3396.79 (64-bit)
Operating System: Windows 10

If possible, add a screenshot here

It's the HTML being escaped twice, probably by some framework deep down there.

 is unicode zero width space which seems to be inserted between the & and the rest of the unicode symbol.

@raisedadead @Bouncey
Hi guys,
Can you confirm this wasn't deliberate?
non-printing character inserted after & in tests for this challenge. (I suspect a copy-paste issue when test written)
Example:
{
          "text": "convertHTML(\"Sixty > twelve\") should return Sixty &gt; twelve.",
          "testString": "assert.match(convertHTML(\"Sixty > twelve\"), /Sixty > twelve/, 'convertHTML(\"Sixty > twelve\") should return Sixty &gt; twelve.');"
},

https://github.com/freeCodeCamp/curriculum/blob/master/challenges/02-javascript-algorithms-and-data-structures/intermediate-algorithm-scripting.json
lines 840 - 920
NOTE: not affecting correctness of test, as not in the value or regex, its just in the message and the preceding text fields.


ggshield scan docker : is generating a UnicodeEncodeError

GitGuardian Shield Version 1.10.7
Successfully installed certifi-2021.10.8 charset-normalizer-2.0.10 click-8.0.3 colorama-0.4.4
ggshield-1.10.7 idna-3.3 marshmallow-3.14.1 pygitguardian-1.3.1 python-dotenv-0.19.2
pyyaml-6.0 requests-2.27.1 termcolor-1.1.0 urllib3-1.26.8 yaspin-2.1.0

[x] I can reproduce this bug in the latest version

Command executed
Successfully built 63dccaba0eeb
Successfully tagged artifactory.our.domain.name/our-docker/our-dotnet-framework-build:1.0
...
ggshield scan docker artifactory.our.domain.name/our-docker/our-dotnet-framework-build:1.0

Describe the bug
We are seeing an error when attempting to scan docker images for one of our Windows containers
Expected behavior
No error occurs
Traceback
  Exception in thread Thread-3 (_spin):
  Traceback (most recent call last):
  File "C:\Python310\lib\threading.py", line 1009, in _bootstrap_inner
  self.run()
  File "C:\Python310\lib\threading.py", line 946, in run
  self._target(*self._args, **self._kwargs)
  File "C:\agent\builds\build-windows-i-04d123e69160d89e5-1\ourorg\docker-image-builder\ggshield\lib\site-packages\yaspin\core.py", line 360, in _spin
  sys.stdout.write(out)
  File "C:\Python310\lib\encodings\cp1252.py", line 19, in encode
  return codecs.charmap_encode(input,self.errors,encoding_table)[0]
  UnicodeEncodeError: 'charmap' codec can't encode character '\u280b' in position 1: character maps to <undefined>

Hi Glenn, thanks for your report.
This looks like a bug in one of our dependencies (yaspin). Can you try with this branch: workaround-yaspin-bug?

No worries @agateau-gg - thanks for assessing the issue so quickly!
I can confirm that the workaround-yaspin-bug branch resolves the error 🎉

This is now fixed in main.


Multi color Module

There is a way to create a multi color text within a single module ?
I'd like to create something like "(green)username(yellow)@(red)computer".
Any advice?

Are you asking how escape codes work?
https://en.wikipedia.org/wiki/ANSI_escape_code

Are you asking how escape codes work?
https://en.wikipedia.org/wiki/ANSI_escape_code

Nope.
I'm trying to write a custom module but as far i can see a module can return only a string and a color code so the result is a string of the same color.
I whould like to know if is possible to write a module that return a multi colored text.

Yes.  Put escape codes in the string.
The colors returned by the module are for getting the built in module coloring to work.  That doesn't mean the string cannot include embedded escape codes.

Cool, tnks!


Improve log document

Gitea's logger system is very unfriendly to users.
This PR improves the document slightly to make users can get their logs more easily.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@d0507ef). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Current head 184bf08 differs from pull request most recent head d03e37a. Consider uploading reports for the commit d03e37a to get more accurate results

@@           Coverage Diff           @@
##             main   #20097   +/-   ##
=======================================
  Coverage        ?   46.96%
=======================================
  Files           ?      972
  Lines           ?   134536
  Branches        ?        0
=======================================
  Hits            ?    63188
  Misses          ?    63609
  Partials        ?     7739

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 d0507ef...d03e37a. Read the comment docs.


Prefer explicit securityContext to privileged flag

https://github.com/istio/istio/issues/49004

CAP_SYS_ADMIN is required for the proc mount scanning/opening netns FDs, at least, and I don't see a less broad capability that grants us that permission. We might be able to skirt around this with a CSI driver to alter perms, and read-only mounts, but that's a lot of complexity and just moves the problem. We could also solve it by not mounting /proc in the CNI agent, and conveying FDs from the CNI plugin itself, as has been batted around.

With an eBPF impl we could probably drop CAP_NET_ADMIN and CAP_NET_RAW in favor of CAP_BPF, but practically speaking the operational risk is identical there.

@bleggett: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
279a0bcb44d86ecf26f2dcb67dff3d44214cdbb8
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@bleggett: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
279a0bcb44d86ecf26f2dcb67dff3d44214cdbb8
link
true
/test release-notes

lint_istio
279a0bcb44d86ecf26f2dcb67dff3d44214cdbb8
link
true
/test lint

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@jwendell @jacob-delgado are you able to review this for openshift?

this does break on OpenShift when setting cni.repair.enabled: false (because privileges are missing to create the UDS listener):
2024-02-02T16:11:04.973546Z	info	Start a UDS server for CNI plugin logs
2024-02-02T16:11:04.973713Z	error	Failed to start up UDS Log Server: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied
Error: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied

this does break on OpenShift when setting cni.repair.enabled: false (because privileges are missing to create the UDS listener):
2024-02-02T16:11:04.973546Z	info	Start a UDS server for CNI plugin logs
2024-02-02T16:11:04.973713Z	error	Failed to start up UDS Log Server: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied
Error: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied

Oh I missed that the UDS listener stuff was contingent on the repair flag :/
TYVM I'll take a look.

this does break on OpenShift when setting cni.repair.enabled: false (because privileges are missing to create the UDS listener):
2024-02-02T16:11:04.973546Z	info	Start a UDS server for CNI plugin logs
2024-02-02T16:11:04.973713Z	error	Failed to start up UDS Log Server: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied
Error: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied

Sorry - when you say this does break do you mean this PR, or removing privileged/setting to false?
If the latter, then we're good, since this PR doesn't do that, and I guess that confirms if we need one we need the other.

this does break on OpenShift when setting cni.repair.enabled: false (because privileges are missing to create the UDS listener):
2024-02-02T16:11:04.973546Z	info	Start a UDS server for CNI plugin logs
2024-02-02T16:11:04.973713Z	error	Failed to start up UDS Log Server: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied
Error: failed to create UDS listener: failed to listen on unix socket "/var/run/istio-cni/log.sock": listen unix /var/run/istio-cni/log.sock: bind: permission denied

kk - then that confirms we always need privileged=true for the istio-cni agent, period then. I bet even if we got past the log socket failure, with privileged=false the CNI plugin install would fail.

PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

This should be good to merge.

PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

cc / LFR @GregHanson / @Monkeyanator / @costinm / @hanxiaop / @jacob-delgado

In response to a cherrypick label: #49029 failed to apply on top of branch "release-1.21":
Applying: Try this
Applying: Remove gen
Using index info to reconstruct a base tree...
M	operator/pkg/apis/istio/v1alpha1/values_types.pb.go
M	operator/pkg/apis/istio/v1alpha1/values_types.proto
Falling back to patching base and 3-way merge...
Auto-merging operator/pkg/apis/istio/v1alpha1/values_types.proto
CONFLICT (content): Merge conflict in operator/pkg/apis/istio/v1alpha1/values_types.proto
Auto-merging operator/pkg/apis/istio/v1alpha1/values_types.pb.go
CONFLICT (content): Merge conflict in operator/pkg/apis/istio/v1alpha1/values_types.pb.go
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0002 Remove gen
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

In response to a cherrypick label: new issue created for failed cherrypick: #49611

Given that I forgot about this one and 1.21 is now late in the game in terms of release, I am not going to cherrypick this into 1.21, unless someone has an objection.


bump TF to rocm6.1.2

https://github.com/ROCm/frameworks-internal/issues/8185#issuecomment-2150417918

retest Ubuntu-GPU-single please


BorderlessFullscreen, and Fullscreen { use_size: false } window modes not working

When supplying a WindowDescriptor resource with mode set to either BorderlessFullscreen or Fullscreen { use_size: false }, the project will still compile and run but only display a large white rectangle instead of the actual game content.
Here's a minimal reproduction project: bevy-borderless-bug-repro.zip
(using the current 0.1.3 release of bevy)
Expected output always (as shown with window mode set to Windowed):

Actual output with BorderlessFullscreen or Fullscreen { use_size: false }:

The same result can be observed by adding a WindowDescriptor resource with either of the broken modes to the Breakout example in the current bevy master branch, so this is not specific to my test project.

looks like #278 popping up again. Need to go through #65 and #69 discussions still.

I think I have a similar issue by running the window_settings.rs example with bevy 0.2.1 on Linux, Plasma desktop with KWin/X11.
My screen is 4K but configured to use 1920x1080p, when I run the window_settings example (which uses Fullscreen { use_size: false }), my display goes back to 4K but the active desktop area is only the top-left quarter (1080p).
The actual Bevy window is not visible, and none of the desktop elements can be interacted with. I have to go to tty2 and then back to tty1 to fix it, which lets me kill the Bevy app and then tweak the KDE system settings to go back to properly using the full monitor size in 1080p.
Removing the custom window_mode from the example fixes the issue.
(If this would be better suited as it's own issue, please tell me.)

The example is now "fixed" until we can sort out a real solution.

This seems to have been fixed; please reopen this if you can reproduce it.


chore(sqla): Address performance tradeoff with eager loading

SUMMARY
https://github.com/apache/superset/pull/22413 introduced logic for eager loading of the columns/metrics (as well as their back references) for a dataset, however the eagerness comes at a cost, i.e., the RESTful API GET /api/v1/explore endpoint is less performant given that all when fetching a slice or dataset the columns/metrics relationships are eagerly loaded.
This PR provides a tradeoff where we lazily load the columns/metrics relationships which negatively impacts the /api/v1/dataset endpoint but speeds up the /api/v1/explore endpoint (the later is used significantly more than the former).  The TL;DR is the current behavior was hyper optimized for one use case which negatively impacted other workflows.
The proposed behavior works best in the general sense and is more akin to how objects were lazy loaded prior to https://github.com/apache/superset/pull/22413 though facets of the existing performance improvements—by not leveraging the joined relationship—remain. As we further refactor the API we can rethink said logic.
Specifically for Airbnb's uber dataset the results are:

Endpoint
Current
Proposed

/api/v1/dataset
~ 7 s
~ 26 s†

/api/v1/explore
~ 16 s
~ 5 s

† Note even though this is slower it is significantly faster than prior to https://github.com/apache/superset/pull/22413 which used to time out. Furthermore a significantly cost is in the (now) lazy loading of the back references, i.e., metric.table which likely could be refactored in code.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS
CI and local performance testing.
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Thanks for the detailed explanation!

I'm kind of on the fence about this, and I did contemplate it. I think generally it's good/standard practice not to define functional arguments which are the default. Granted defaults can change, but it does/can result in code bloat.


Installation instructions

Added installation info.

Closing because this should not be necessary. Installation from Atom's UI should be sufficient.


[Help Request] About the version of ray

Error:
(raylet)   File "/home/k/Desktop/SMARTS-1.1.0/.venv/lib/python3.8/site-packages/ray/new_dashboard/utils.py", line 20, in
(raylet)     import aiohttp.signals
(raylet) ModuleNotFoundError: No module named 'aiohttp.signals'
Question
Hi folks,
I am trying to run baselines/marl_benchmark/run.py, but some errors happens.
I find it's because of the version of aiohttp(3.8.4) is not suitable for Ray(1.4.0), but when I try to modify the version of aiohttp or ray, other dependency problems happen.
I really appreciate if you can help me^^

Hello @ClorisUcas, we have moved MARL out of the repository recently since we are not actively up-keeping it for the current version of SMARTS. The main issue has been that the dependencies have become problematic to maintain.
As to how the situation currently stands, a fix of the dependencies will require us to upgrade RLlib to a modern version.
Considering this has been desirable since https://github.com/huawei-noah/SMARTS/issues/1238 I will try this over the weekend. I can get back to you by Monday on it.

I apologize, I have been unable to work through this as early as I expected.

It’s ok. Thank you for your hard working and  kind reply.
I also tried a lot of methods to solve it, but it's a difficult problem.
Now based on your single agent work, I am trying to finish multi-agent with other RL library.


Callback realloc() fails for uninitialized struct

I initialized and freed it.

Thanks!

No, thank you. I depended on your documentation a lot.
BE
Get your free encrypted mail account at protonmail.com and your communications with Motia will be encrypted end to end.
Sent with ProtonMail secure email.
------- Original Message -------
On Sunday, April 10th, 2022 at 16:22, Daniel Stenberg @.***> wrote:

Thanks!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Add Flutter Dev Podcast

What does this PR do?
Add Flutter Dev Podcast to the list of RU podcasts
For resources
Podcast about Flutter development.
How do we know it's really free?
All episodes are free to listen.
For book lists, is it a book?
No.
Checklist:

[x] Not a duplicate
[x] Included author(s) if appropriate
[x] Lists are in alphabetical order
[x] Needed indications added (PDF, access notes, under construction)

Thanks.


Add the possibility to change window title

Done in commit https://github.com/Sygmei/ObEngine/commit/b06762f1fb040afebd5007df4037b58535bc2468


Add data feed module, include Alpaca?

Not entirely sure how this will be defined, but this will need to standardize the interface for getting the data needed for this stack.  It would then subclass to implement specific APIs/SDKs, such as Alpaca.
Can consider Intrinio, especially since done work with their API in the past; but likely will not be needing their paid model from the start (and would prefer free as much as possible...will likely make an issue in the future to allow some configuration to split between free-only and enabling paid options).

Intrinio will not be used -- they have pivoted away from serving individual users.


Hey, so when we have native electron support ?

https://github.com/apache/cordova-plugin-file/pull/371

Having Native electron support would help a lot


MVC not rendering on xml design view, messed up

Please refer below

<com.prolificinteractive.materialcalendarview.MaterialCalendarView
android:id="@+id/adapter_analytic_parent_item_calendar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/adapter_analytic_parent_item_date_started"
app:mcv_selectionColor="@color/A80_BRIGHT_SKY_BLUE"
app:mcv_selectionMode="range"
app:mcv_showOtherDates="all" />

When you want to work on design just downgrade the library version to 1.6.0 but upgrade it when you run the app.

When you want to work on design just downgrade the library version to 1.6.0 but upgrade it when you run the app.

is there no fix aside from rolling back version?

yes ! download the source code and inside the constructor of MaterailCalendarView put this line of code

  if(isInEditMode())
    {
      AndroidThreeTen.init(context);
    }

build the project and include it in your working project

When you want to work on design just downgrade the library version to 1.6.0 but upgrade it when you run the app.

is there no fix aside from rolling back version?

yes ! download the source code and inside the constructor of MaterailCalendarView put this line of code

  if(isInEditMode())
    {
      AndroidThreeTen.init(context);
    }

build the project and include it in your working project

Would that mean a lot of work, like forking, and reposting the project for dependency usage?


Loading spinner for the whole app (loading data)

We should signify that a view pane is loading rather than show the pill after the view loads.

This will require https://github.com/vega/voyager/issues/589


QSI Vocab Updates

Updates to three QSI vocabs

@Steven-Bowden, Anne has made changes to a few QSI vocabs. We have fixed the issues raised by the validator.
Can you tell us what are the next steps to get this merged in and available online in Prez? Thanks!


No matching CUDA flavor for linux found: cu118/sm_75

On my (Arch) Linux machine, I want to use pre-trained UniversalSentenceEncoder from the Tensorflow model hub. This works nicely on CPU.
On a different machine with GPU I try to accelerate this, but get this warning:
WARN: No matching CUDA flavor for linux found: cu118/sm_75, fallback to CPU. << i.djl.tensorflow.engine.javacpp.LibUtils
Tensorflow version used by DJL (Output of TensorFlow.version()): 2.7.1
Nvidia libs installed on the machine:
cudnn <IP_ADDRESS>-1, cuda 11.8.0-1, cuda-tools 11.8.0-1
Djl-libs from my pom.xml:
        <dependency>
            <groupId>ai.djl</groupId>
            <artifactId>api</artifactId>
            <version>0.19.0</version>
        </dependency>

        <dependency>
            <groupId>ai.djl.tensorflow</groupId>
            <artifactId>tensorflow-engine</artifactId>
            <version>0.19.0</version>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>org.tensorflow</groupId>
            <artifactId>tensorflow-core-platform</artifactId>
            <version>0.4.1</version>
        </dependency>

Is there a problem with the installed cuda/cudnn version, or is the installation correct and found,  but Djl/Tensorflow doesn't find a matching Gpu-Tensorflow version for 'cu118/sm_75' to download? How to solve this? Thanks a lot.

In the code of ai.djl.tensorflow.engine.javacpp.LibUtils I can see that Djl has no matching Tensorflow version under 'https://publish.djl.ai/tensorflow-*'. Thus, I see two possibilities:

Changing the OS Cuda version to something Djl offers for download
Pointing Djl to a self-installed Tensorflow version with the TENSORFLOW_LIBRARY_PATH environment variable

For the solution 1: Can I somewhere determine which versions are available at https://publish.djl.ai?

@reuschling
DJL TensorFlow 2.7.x is compiled against CUDA 11.3, please switch to CUDA 11.3 to use TensorFlow GPU.
DJL doesn't directly depends tensorflow-core-platform package, you don't need to add it in your pom.xml file.
As you already looked into DJL's code, DJL will auto detect your system, if no matching CUDA found, DJL will switch to CPU.
You can also bundle a os specific dependency: https://github.com/deepjavalibrary/djl/blob/master/engines/tensorflow/tensorflow-engine/README.md#linux-gpu

@reuschling
You can also find maven package that DJL published: https://search.maven.org/search?q=g:ai.djl.tensorflow

Thanks a lot, I was able to get it working with the Cuda 11.0 version


Missing

I disable JavaScript by default for security reason and only enable if it seems like a good idea. The Share site does not give me any sort of actionable error message and this is not a great UX.

Added a noscript message :)


[BB2-1091] Impl FHIR Endpoints w Retry and Token Refresh PR

FHIR end points handling with retry and expired token refresh logic integrated
also put client/server (refactored to call SDK) similar to sample app in as harness code to try out sdk (will remove later).

@JFU-GIT I'll wait to review this until all of the sample app code is stripped out. It's really bloating this PR and making it hard to pick out the stuff that is really needed.

Was also just thinking about this from a high level... maybe creating a wrapper class called something like: FhirRequest and putting all the logic inside that would be helpful. It would keep the top level class a lot cleaner.

@nbragdon @dtisza1 pushed another round of refactor / cleanup per feedbacks, let me know if there are any further feedback, thanks!

@nbragdon @dtisza1 thanks a lot for the great feedbacks, just done another push to address all the feedbacks, plz review again when got a chance.


Adding Operating System tag with validation in ODM

Closes https://cccs.atlassian.net/browse/AL-752

We probably also need to make sure tests are passing.

We probably also need to make sure tests are passing.

Codecov Report

Merging #82 (20db5f7) into dev (cd88367) will decrease coverage by 0.15%.
The diff coverage is 91.66%.

@@            Coverage Diff             @@
##              dev      #82      +/-   ##
==========================================
- Coverage   62.85%   62.70%   -0.16%
==========================================
  Files         116      116
  Lines        9941     9909      -32
==========================================
- Hits         6248     6213      -35
- Misses       3693     3696       +3

Impacted Files
Coverage Δ

...emblyline/datastore/support/elasticsearch/build.py
88.46% <ø> (ø)

assemblyline/odm/randomizer.py
93.69% <80.00%> (-2.07%)
:arrow_down:

assemblyline/odm/base.py
89.11% <100.00%> (+0.12%)
:arrow_up:

assemblyline/odm/models/tagging.py
100.00% <100.00%> (ø)

assemblyline/filestore/transport/sftp.py
26.60% <0.00%> (-5.02%)
:arrow_down:

assemblyline/filestore/transport/ftp.py
18.47% <0.00%> (-3.96%)
:arrow_down:

assemblyline/datastore/__init__.py
59.15% <0.00%> (-1.66%)
:arrow_down:

assemblyline/datastore/helper.py
24.80% <0.00%> (-1.27%)
:arrow_down:

assemblyline/run/cli.py
23.24% <0.00%> (-1.27%)
:arrow_down:

... and 9 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 cd88367...20db5f7. Read the comment docs.

Codecov Report

Merging #82 (20db5f7) into dev (cd88367) will decrease coverage by 0.15%.
The diff coverage is 91.66%.

@@            Coverage Diff             @@
##              dev      #82      +/-   ##
==========================================
- Coverage   62.85%   62.70%   -0.16%
==========================================
  Files         116      116
  Lines        9941     9909      -32
==========================================
- Hits         6248     6213      -35
- Misses       3693     3696       +3

Impacted Files
Coverage Δ

...emblyline/datastore/support/elasticsearch/build.py
88.46% <ø> (ø)

assemblyline/odm/randomizer.py
93.69% <80.00%> (-2.07%)
:arrow_down:

assemblyline/odm/base.py
89.11% <100.00%> (+0.12%)
:arrow_up:

assemblyline/odm/models/tagging.py
100.00% <100.00%> (ø)

assemblyline/filestore/transport/sftp.py
26.60% <0.00%> (-5.02%)
:arrow_down:

assemblyline/filestore/transport/ftp.py
18.47% <0.00%> (-3.96%)
:arrow_down:

assemblyline/datastore/__init__.py
59.15% <0.00%> (-1.66%)
:arrow_down:

assemblyline/datastore/helper.py
24.80% <0.00%> (-1.27%)
:arrow_down:

assemblyline/run/cli.py
23.24% <0.00%> (-1.27%)
:arrow_down:

... and 9 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 cd88367...20db5f7. Read the comment docs.

We probably also need to make sure tests are passing.

Tests have passed, merging into dev

We probably also need to make sure tests are passing.

Tests have passed, merging into dev


feat: registers RegisterFormatters for tinygo

Address https://github.com/corazawaf/coraza/blob/0af085cac97602ac22cb58d3a1c7308f241affb6/internal/auditlog/init_tinygo.go#L22
JSON audit logs should be now supported by tiny go, therefore the PR proposes to build the audit log formatters also for it. See https://github.com/corazawaf/coraza-proxy-wasm/pull/263

shall we merge this?


Define output worker file path and name

how to define? example doesn't work

I am also very curious to learn how to do it correctly

Did you ever figure out how to do this with webpack 1 without the inline option?

@mariotacke
    worker: {
        output: {
            filename: "developer/dist/[hash].worker.js",
        }
    }

should do the trick to put your worker file into the folder you want. However, you cannot use
[name].worker.js

if you have more than one worker file. But you can watch https://github.com/webpack-contrib/worker-loader/pull/22 and hopefully it will get merged soon.

Couldn't it simply use the chunks pattern? Most configs already have:
chunkFilename: 'build/chunk.[id].js',

The problem is that we distribute our lib, and this forces customers to add this stuff to their configs or otherwise the worker is dumped into the root folder with a random hashname.

Name option should work now


update lock information logging to happen on info and to happen only once per state switch

Thanks for contributing to cloud_controller_ng. To speed up the process of reviewing your pull request please provide us with:

A short explanation of the proposed change:
update lock information logging to happen on info and to happen only once per state switch

An explanation of the use cases your change solves

makes lock information easier to find in logs, but less verbose so to be able to bring it to the info level

Links to any other associated PRs

[x] I have reviewed the contributing guide

[x] I have viewed, signed, and submitted the Contributor License Agreement

[x] I have made this pull request to the main branch

[x] I have run all the unit tests using bundle exec rake

[ ] I have run CF Acceptance Tests

Would we want to keep these additional logs at a debug level, or remove all debug logs.

I just figured if you get one error, and a different error, it might be nice to see both if it's set to debug. Especially because I think saving the error off is going to lead to error spamming(I believe the errors have embeded timestamps). But I'm fine with just 1 log on both case.

I agree that seeing more logs would be nice if you set to debug, but not sure how many operators would set to debug.  I saw that is your call--I don't think its necessary, however.


Publish OpenSearch min snapshots for Mac M1 machines

Is your feature request related to a problem? Please describe.
Currently, the only way to run plugins on a Mac M1 machine is to specify a path to a custom distribution url that contains a darwin-tar or darwin-arm64-tar gz file of an OpenSearch snapshot.
Describe the solution you'd like
Publish minimum OpenSearch snapshot distributions so that gradle commands (check, run, integTest, etc.) can be run without specifying a path every time.
Additional context
https://github.com/opensearch-project/k-NN/issues/580

@gaiksaya The M1 machines default to arm64 for the basic commands.  Are those available?

No! I believe we are only building x64 for macOS: https://github.com/opensearch-project/opensearch-build/blob/main/jenkins/opensearch/publish-min-snapshots.jenkinsfile#L111-L142
Not sure if there a plan in near future to add it. We do have issue open to support macOS as a distribution #38 .
Adding @bbarani @prudhvigodithi

Hey @ryanbogan please check this comment https://github.com/opensearch-project/opensearch-build/issues/2216#issuecomment-1464045347
Mac os support x86_64 and arm64 as well, mac m1 works for both x86_64 and arm64 with help of Rosetta 2
arm64 is the architecture used by newer Macs built on Apple Silicon, shipped in late 2020 and beyond, but x64 should work as well, pgrep oahd should output the Rosetta process.

Duplicate with https://github.com/opensearch-project/opensearch-build/issues/4670 so move it to there now.
Thanks.


Install hook fails

Steps to reproduce
juju deploy zookeeper --channel 3/edge
Expected behavior
No error on deploy.
Actual behavior

Versions
dylan@protostar:~/repos/juju-dev-machine$ jhack utils print-env
                           juju info v0.1
┌──────────────┬───────────────────────────────────────────────────┐
│ jhack        │ <IP_ADDRESS>                                          │
│ python       │ 3.10.6 (/home/dylan/repos/jhack/venv/bin/python3) │
│ juju-* snaps │  juju │ 3.2.0 - 23190 (latest/stable)             │
│ microk8s     │ MicroK8s v1.27.2 revision 5372                    │
│ lxd          │ 5.0.2                                             │
│ multipass    │ Not Installed.                                    │
│ multipassd   │ Not Installed.                                    │
│ os           │ Ubuntu 22.04.2 LTS                                │
│ kernel       │ Linux 5.15.0-75-generic x86_64                    │
└──────────────┴───────────────────────────────────────────────────┘

Log output
Juju debug log:
application-zookeeper: 12:52:53 INFO juju.worker.caasoperator.uniter.zookeeper/1 awaiting error resolution for "install" hook
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install Traceback (most recent call last):
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install   File "./src/charm.py", line 14, in <module>
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install     from config import ZooKeeperConfig
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install   File "/var/lib/juju/agents/unit-zookeeper-1/charm/src/config.py", line 11, in <module>
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install     from utils import safe_get_file, safe_write_to_file, update_env
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install   File "/var/lib/juju/agents/unit-zookeeper-1/charm/src/utils.py", line 72, in <module>
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install     def map_env(env: list[str]) -> dict[str, str]:
application-zookeeper: 12:52:53 WARNING unit.zookeeper/1.install TypeError: 'type' object is not subscriptable
application-zookeeper: 12:52:54 ERROR juju.worker.caasoperator.uniter.zookeeper/1.operation hook "install" (via hook dispatching script: dispatch) failed: exit status 1

Same issue here trying to follow this tutorial: https://charmhub.io/topics/canonical-observability-stack/tutorials/instrumenting-machine-charms

@dstathis @Guillaumebeuzeboc
From a cursory glance, this is due to type-hinting changes in Python 3.9+. Ubuntu 20.04 runs 3.8, 22.04 runs 3.10.
Currently this charm only supports 22.04, might that be the cause? Though, that's specified in the charmcraft.yaml, so this seems strange.
What Juju version did you try this on? I'll see if I can replicate, as I'm not seeing any issues our side.


Update Python to 3.9, Add Code Quality Tools, & Update Lockfile

Overview
This PR introduces several updates to enhance development workflow and maintainability:

Python Version Upgrade 3.8.1>3.9

Rationale: Upgrading to Python 3.9 for latest language features, improved performance, and future-proofing the codebase.

Integration of Code Quality Tools:

Tools Added: pre-commit, isort, black, autoflake.
Rationale: These tools collectively improve code consistency and quality.

Made tools folder a sub package

Updated README to reflect pre-commit addition

Testing and Validation:

Tests did not pass, but had similar outputs. Is this unexpected behavior at the moment?

Additional Notes:

Contributors may need to update their local Python version to 3.9.
Setting up pre-commit hooks locally is recommended to take advantage of the automated code quality checks.

Hey @greysonlalonde really appreciate this!
You pointed out some good stuff so I update main, to now version the cassetes of the test so it runs the same for everyone, also update their generation to not store authorization headers so it doesn't leak any keys as people write new tests.
Also remove the the AgentVote class as that was not done yet, it should be a simple rebase but lmk if I can help.


TextEditor needs a select option for label attribute

The editor for the TextSymbolizer needs a component to let the user decide, which attribute is used for labeling. Maybe we can re-use the AttributeCombo of the ComparisonFilter.
Related to #160.

Closed by #193


[Event Request] codeunit 5988 "Serv-Documents Mgt." function CheckAndSetPostingConstants

could you please add a publisher in codeunit 5988 "Serv-Documents Mgt." function: CheckAndSetPostingConstants
 procedure CheckAndSetPostingConstants(var PassedShip: Boolean; var PassedConsume: Boolean; var PassedInvoice: Boolean)
    begin
        with ServHeader do begin
            if PassedConsume then begin
                ServLine.Reset;
                ServLine.SetFilter(Quantity, '<>0');
                if "Document Type" = "Document Type"::Order then
                    ServLine.SetFilter("Qty. to Consume", '<>0');
                // New Event
                SetFilterForPassedConsumeOnCheckAndSetPostingContants(ServLine);

                PassedConsume := ServLine.Find('-');
                if PassedConsume and ("Document Type" = "Document Type"::Order) and not PassedShip then begin
                    PassedConsume := false;
                    repeat
                        PassedConsume :=
                          (ServLine."Quantity Shipped" - ServLine."Quantity Invoiced" - ServLine."Quantity Consumed" <> 0);
                    until PassedConsume or (ServLine.Next = 0);
                end;
            end;
...

[IntegrationEvent(false, false)]
local procedure SetFilterForPassedConsumeOnCheckAndSetPostingContants(var TempServLine: record "Service Line" temporary);
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Dark Mode

Feature request-
Will add a toggle to switch between dark mode and light mode.
Is your feature request related to a problem? Please describe. (optional)
A clear and concise description of what the problem is.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Describe how this feature will be useful to our readers.
User will be able to switch between dark mode and light mode according to his convenience.
Additional context
Add any other context or screenshots about the feature request here.
Are you contributing under any open-source program ?

LGM-SOC

Note:

If you want to work on an issue, you should check if it has already been assigned to anyone. If the issue is free you can comment /assign to get the issue assigned to you.
If you are raising a new issue and want to work on it then also you should comment /assign under the issue to get it auto assigned.
It is adviced to take up/ work on only 2 issues at the same time.
Please refrain from adding labels to your issue/pull-request on your own. It is the job of the Project Admin and the Mentors to review your issue/pull-request and add labels accordingly.

/assign

@TheArushiSingh I appreciate your enthusiasm for contributions. But I would request you to clone the repo and run the project on your system first.
Actually, we already have this feature for Dark Mode.🙂
But if you still have some better idea to improve it further then that would be great. Do let us know if you want to improve it? Otherwise, we might have to close this issue as the feature already exists.

Oh,I guess I didn't notice that
That was the only thing I was suggesting.
I'm closing this issue.


Run datasets in group that doesn't have access to Docker

In hindsight, this should not be an issue, as any code we run from the user will only execute in a new docker image, where we specifically do not mount the docker.sock. This is not to say there could be some kind of security issues still, just probably not this.


backend: add weather tool

New Community Weather Service
Uses Langchain weather document loader to retrieve weather information about some place.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Sorry, I did not have time to test the modification, I still have some problem making cohere-toolkit work correctly on my computer right now (using colima and not docker). But the hackaton ends soon and wanted to make a contribution ;)

Hey @denrou do you have time to fix up this PR? There's been significant changes since then

@denrou Will be closing this for now


Require Server Name Indication

Is there anyway to specify that I want to require Server Name Inidication on my SSL bindings?
Basically the setup is:
IP Address: All Unassigned
Port 443
Type: HTTPS
Hostname: somehostname
SNI: Checked
SSL Certificate: somehostname ssl thumbprint
Is there way to do this through DSC?

So I have some code for this but it's doing some strange things in that Set-TargetResource is running every time I run this code. Kind of unclear as to why and I'm still working through it. I'll get a pull request up so everyone can see what I'm doing.