Add ros2_tracing tracepoints

Depends on https://github.com/ros2/ros2_tracing/pull/74; implements: https://github.com/ros2/ros2_tracing/issues/73
This PR introduces ros2_tracing tracepoints which are really helpful for examining system performance. The dependency to the ros2_tracing PR stems from the fact, that one of the original tracepoints had to be extended in order to get the timestamp during writing to DDS.
In order to do that, DDS_DataWriter_write_untypedI had to be replaced with  DDS_DataWriter_write_w_timestamp_untypedI. At first it seemed reasonable to use` in order to get the respective timestamp.
This seems to work, but DDS_DomainParticipant_get_current_time introduces a massive performance penality. The flamegraph below shows the result of profiling it using perf.

From https://community.rti.com/kb/how-clocks-are-used-connext-dds I'd conclude, that we need the "external clock" used by Connext here. Looking at the perf profile, it seems that there is a method/function DDS_DomainParticipant_get_external_clockI which would provide to us said clock, but it seems that this function is not part of Connexts public API right? Is there any way to get this clock or the timestamp which Connext would use if  DDS_DataWriter_write_untypedI is used without paying such a massive performance penalty?

From https://community.rti.com/kb/how-clocks-are-used-connext-dds I'd conclude, that we need the "external clock" used by Connext here. Looking at the perf profile, it seems that there is a method/function DDS_DomainParticipant_get_external_clockI which would provide to us said clock, but it seems that this function is not part of Connexts public API right? Is there any way to get this clock or the timestamp which Connext would use if DDS_DataWriter_write_untypedI is used without paying such a massive performance penalty?

I'm not very familiar with the clock configuration in Connext, and I'm looking into possible alternative solutions. I'll get back after I have a better idea of available options.

@asorbini Thank you for the review! I just applied the changes you requested and (forced) pushed them.

@cwecht are you sure you pushed the change? The code looks unchanged.
In general, I would prefer if you didn't force push but rather pushed an incremental commit so that the additional changes can be reviewed without having to re-scan through all of the code.
One reason to force push in this case would be to fix the commit message, which should include a DCO (e.g. "Signed-off-by: Your Name your@email"). I guess we are not strictly enforcing this rule and we are missing a CONTRIBUTING document in this repository (like this one), but the convention has been followed by all contributions, as far as I'm aware.

@asorbini now it's actually pushed including the signoff.

I've got some news regarding DDS_DomainParticipant_get_current_time.
I was able to test this PR with connext micro and using DDS_DomainParticipant_get_current_time in this case is just fine; there is basically no significant performance overhead.
For Connext PRO it is a different story:

The traces seem to indicate that the majority of the time in DDS_DomainParticipant_get_current_time is spend looking up the clock which is configured in the respective QoS settings. The documentation seems to indicate that this has to be done since these QoS settings may change at any time  which makes it reasonable to look up the clock which is supposed to be used every time.
However, if I understand the current implementation in rmw_connextdds correctly, the clock in use will always be the default clock, as PROPERY attribute of DDS_DomainParticipantQos is never changed. From my understanding this can't even be changed via e.g. XML.
If the above is correct, we should be fine with using the system clock here directly as this should be always the clock which is used by DDS_DomainParticipant_get_current_time by default.

@asorbini could you double check this conclusion?

@asorbini I've added now rmw_connextdds_get_current_time which encapsulates the distinction between Pro and Micro regarding time retrieval. The performance difference between Pro's DDS_DomainParticipant_get_current_time and this one based on RTIOsapiUtility_getTime is quite impressive:  RTIOsapiUtility_getTime takes usually a few hunders of nanoseconds where DDS_DomainParticipant_get_current_time takes usually more like 6-20 microseconds. Do you have any objections regarding this approach?

@asorbini May I ask you kindly to have another look at this PR? Thank you very much!

Running full CI with repos for this PR, ros2/rmw_cyclonedds#454, ros2/rmw_fastrtps#694, ros2/ros2_tracing#74:

Linux:
Linux aarch64:
Windows:

Running CI again:

Linux
Linux aarch64
Windows

I'm note quite sure why the latest build failed. Looks more like a jenkins hiccup to me.

@cwecht agreed, seems like an unrelated failure. Running Linux again to check: .
The other two builds are yellow because of a formatting error unrelated to this PR.

The other two builds are yellow because of a formatting error unrelated to this PR.

I will point out that the nightlies have no issues: https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/2582/ .  So it is worth investigating those before merging.

@clalancette thank you for the clarification. I totally agree that those issues should be resolved, but they are C++ linter errors and they stem from a different PR (ros2/rmw_cyclonedds#454), hence why I didn't think they'd affect this PR.


[SPARK-45861][PYTHON][DOCS] Add user guide for dataframe creation

What changes were proposed in this pull request?
The pr aims to add user guide for dataframe creation.
Why are the changes needed?
To improve PySpark documentation.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Manually test.
Was this patch authored or co-authored using generative AI tooling?
No.

After:

Cc @itholic @allisonwang-db @zhengruifeng mind reviewing this please when you find some time?

Done

Looks pretty good otherwise.

cc @allanf-db FYI

Will the code in this guide be tested by our Python doc tests, by the way?

Will the code in this guide be tested by our Python doc tests, by the way?

No, but I have manually tested it.


Intermittent integration_tests failures

Sometimes there is integration test failures, sometimes not. Log of failure on ppc64le:
[00:01:02] ++ go run github.com/onsi/ginkgo/v2/ginkgo ./integration_tests
[00:01:14] Running Suite: Integration Test Suite - /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests
[00:01:14] =======================================================================================
[00:01:14] Random Seed: 1702820176
[00:01:14]
[00:01:14] Will run 10 of 10 specs
[00:01:48] вЂўвЂўвЂўвЂў
[00:01:48] ------------------------------
[00:01:48] вЂў [FAILED] [0.167 seconds]
[00:01:48] Testing the ssh3 cli With running server Insecure Client behaviour TCP port forwarding [It] works with messages larger than a typical MTU
[00:01:48] /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:239
[00:01:48]
[00:01:48]   Timeline >>
[00:01:48]   1:36PM ERR there was an error when parsing known hosts: open /root/.ssh3/known_hosts: permission denied
[00:01:48]   1:36PM WRN could not open /root/.ssh/config: open /root/.ssh/config: permission denied, ignoring config
[00:01:48]   1:36PM WRN could not open /root/.ssh3/oidc_config.json: open /root/.ssh3/oidc_config.json: permission denied
[00:01:48]   1:36PM DBG received request from User-Agent SSH 3.0 francoismichel/ssh3 0.1.3 (major 0, minor 1, patch 3)
[00:01:48]   1:36PM ERR cannot parse identity line: unknown identity format: # OpenSSH authorized_keys file format is described in sshd(8) manual page.
[00:01:48]   1:36PM DBG parsing ssh authorized key
[00:01:48]   1:36PM DBG parsing ssh-rsa identity
[00:01:48]   1:36PM INF got request: method: CONNECT, URL: https://<IP_ADDRESS>:4433/ssh3-tests?user=builder
[00:01:48]   could not read data from stdin: EOF1:36PM INF eof on tcp-forwarding channel 8
[00:01:48]   1:36PM ERR could read data on TCP socket: read tcp <IP_ADDRESS>:50510-><IP_ADDRESS>:9090: read: connection reset by peer
[00:01:48]   [FAILED] in [It] - /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:179 @ 12/17/23 13:36:57.51
[00:01:48]   << Timeline
[00:01:48]
[00:01:48]   [FAILED] Expected
[00:01:48]       <string>: "...ч5ZЊ@ Ь..."
[00:01:48]   to equal      |
[00:01:48]       <string>: "...ч5ZЊ@ Ь..."
[00:01:48]   In [It] at: /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:179 @ 12/17/23 13:36:57.51
[00:01:48] ------------------------------
[00:01:54] вЂўвЂўвЂўвЂўвЂў
[00:01:54]
[00:01:54] Summarizing 1 Failure:
[00:01:54]   [FAIL] Testing the ssh3 cli With running server Insecure Client behaviour TCP port forwarding [It] works with messages larger than a typical MTU
[00:01:54]   /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:179
[00:01:54]
[00:01:54] Ran 10 of 10 Specs in 40.358 seconds
[00:01:54] FAIL! -- 9 Passed | 1 Failed | 0 Pending | 0 Skipped
[00:01:54] --- FAIL: TestMessage (40.36s)
[00:01:54] FAIL
[00:01:54]
[00:01:54] Ginkgo ran 1 suite in 47.281446568s
[00:01:54]
[00:01:54] Test Suite Failed
[00:01:54] exit status 1

Excuse me for the garbage in the output but that's how you log even if there is no tty.
On aarch64:
[00:00:44] ++ go run github.com/onsi/ginkgo/v2/ginkgo ./integration_tests
[00:00:51] Running Suite: Integration Test Suite - /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests
[00:00:51] =======================================================================================
[00:00:51] Random Seed: 1702820760
[00:00:51]
[00:00:51] Will run 10 of 10 specs
[00:01:09] вЂўвЂўвЂўвЂў
[00:01:09] ------------------------------
[00:01:09] вЂў [FAILED] [0.079 seconds]
[00:01:09] Testing the ssh3 cli With running server Insecure Client behaviour TCP port forwarding [It] works with messages larger than a typical MTU
[00:01:09] /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:239
[00:01:09]
[00:01:09]   Timeline >>
[00:01:09]   1:46PM ERR there was an error when parsing known hosts: open /root/.ssh3/known_hosts: permission denied
[00:01:09]   1:46PM WRN could not open /root/.ssh/config: open /root/.ssh/config: permission denied, ignoring config
[00:01:09]   1:46PM WRN could not open /root/.ssh3/oidc_config.json: open /root/.ssh3/oidc_config.json: permission denied
[00:01:09]   1:46PM DBG received request from User-Agent SSH 3.0 francoismichel/ssh3 0.1.3 (major 0, minor 1, patch 3)
[00:01:09]   1:46PM ERR cannot parse identity line: unknown identity format: # OpenSSH authorized_keys file format is described in sshd(8) manual page.
[00:01:09]   1:46PM DBG parsing ssh authorized key
[00:01:09]   1:46PM DBG parsing ssh-rsa identity
[00:01:09]   1:46PM INF got request: method: CONNECT, URL: https://<IP_ADDRESS>:4433/ssh3-tests?user=builder
[00:01:09]   could not read data from stdin: EOF1:46PM INF eof on tcp-forwarding channel 8
[00:01:09]   [FAILED] in [It] - /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:225 @ 12/17/23 13:46:23.057
[00:01:09]   << Timeline
[00:01:09]
[00:01:09]   [FAILED] Expected
[00:01:09]       <int>: 16640
[00:01:09]   to equal
[00:01:09]       <int>: 20000
[00:01:09]   In [It] at: /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:225 @ 12/17/23 13:46:23.057
[00:01:09] ------------------------------
[00:01:15] вЂўвЂўвЂўвЂўвЂў
[00:01:15]
[00:01:15] Summarizing 1 Failure:
[00:01:15]   [FAIL] Testing the ssh3 cli With running server Insecure Client behaviour TCP port forwarding [It] works with messages larger than a typical MTU
[00:01:15]   /usr/src/RPM/BUILD/ssh3-0.1.4/integration_tests/ssh3_test.go:225
[00:01:15]
[00:01:15] Ran 10 of 10 Specs in 24.303 seconds
[00:01:15] FAIL! -- 9 Passed | 1 Failed | 0 Pending | 0 Skipped
[00:01:15] --- FAIL: TestMessage (24.31s)
[00:01:15] FAIL
[00:01:15]
[00:01:15] Ginkgo ran 1 suite in 28.33480022s
[00:01:15]
[00:01:15] Test Suite Failed
[00:01:15] exit status 1

It looks different.
We have 3 architecture and almost any build&test run cause failure on some of them.

Excuse me for the garbage in the output but that's how you log even if there is no tty.

I found I can pass --no-color to the ginkgo. I also will add --flake-attempts=4 but I'd wish tests are more robust.


Cannot browse files in appservice anymore (error 404)

Until today's update of VSC I could browse and edit files directly inside an appservice. As of now I can't anymore. I restarted VSC and the laptop several times but no success.
Does this occur consistently? Yes
Repro steps:

Select Azure extension (works)
Select correct resource (works)
Select an app service (works)
Select 'Files' -> Error: Unexpected status code: 404

Version: 0.24.6
OS: darwin
OS Release: 22.3.0
Product: Visual Studio Code
Product Version: 1.75.0
Language: en

Thanks for filing this issue! You should be able to revert to the previously released version of the App Service extension (v0.24.5) to get the files working again.

Works again if I revert 37abfbee4004894153e7f71886c7cec50e7507d1 😄

Confirmed, thanks for that!

Fix has been released in the latest extension version v0.24.7.


Add license badge

first-timers-only
This issue is tagged :octocat: first-timers-only. It is only for people who have never contributed to open source before, and are looking for an easy way take their first steps.
Consider this your chance to dip your toe into the world of open-source, and get some bragging rights for writing code that makes drones fly, lets cars find charging stations, helps people and goods get from place to place, and more.
Find more first-timers-only issues here:

Missions
Mission Control
Captain

Thank you for your help :heart:
What is this project?
DAV (Decentralized Autonomous Vehicles) is a new foundation working to build an open-source infrastructure for autonomous vehicles (cars, drones, trucks, robots, and all the service providers around them) to communicate and transact with each other over blockchain.
As an organization that believes in building a large community of open-source contributors, we often create issues like this one to help people take their first few steps into the world of open source.
Captain
The DAV project you are looking at is the Captain. The captain is the logic that sits on board drones, gives it commands, negotiates missions with mission control, and communicates with the blockchain.
How you can help
The Issue
Your task for this issue is...
In the README.md file
add this following line of code:
[![license](https://img.shields.io/github/license/DAVFoundation/captain.svg?style=flat-square)](https://github.com/DAVFoundation/captain/blob/master/LICENSE)`

This will display a badge like this:
Contributing to Captain

[ ] Make sure this issue is labeled up-for-grabs and not labeled claimed, to verify no one else is working on it.
[ ] Comment in this issue that you would like to do it.
[ ] Fork the repository from the Captain GitHub page.
[ ] Clone a copy to your local machine with $ git clone git@github.com:YOUR-GITHUB-USER-NAME/captain.git
[ ] Make changes in the README.md file
[ ] Once you've made sure all your changes work correctly and committed all your changes, push your local changes back to github with $ git push -u origin master
[ ] Visit your fork on GitHub.com (https://github.com/YOUR-USER-NAME/captain) and create a pull request for your changes.
[ ] Make sure your pull request describes exactly what you changed and references this issue (include the issue number in the title like this: #7)
[ ] Please do not fix more than one issue at a time. Your pull request should only fix what is described in this issue.

Hello cg-cnu,
I would love to work on this issue.
Thanks.

Hey @bonecrushereb
Thanks for your interest. These issues are meant for first-timers. Specially for folks who haven't done any open source contribution and looking for a simple way to do their first pull request. If you are are completely new to open source please do go ahead, else I would request you to leave it for the first-timers. Hope you understand. Thanks 😄

Hi @bonecrushereb
As @cg-cnu said. If this is the first time you are contributing to open source, we would be super-happy to have you! Go ahead.

Yes this is my first time thank you for the opportunity!

License badge can be after the gitter chat. You can refer to other repos for consistency :smile:

Hey @bonecrushereb Thanks for your help 👏💯 Congratulations on your first contribution to open source. 🎆 Hope this got you excited about contributing to open source 😄 Feel free to join our gitter channel


Fast Forward returns most recent data point when zooming into older data in Grafana

Currently, if fast forward is enabled, the most recent data is always stitched into the result matrix of a Grafana query. This becomes an issue when I want to look at older data by zooming in. Because fast forward returns the most recent value, the graph ends with an extra point that messes up the y-axis.
Example 1: Reading directly from a Prometheus datasource and zooming in.(Query: node_forks_total)

Example 2: Reading from Trickster and zooming in.(Query: node_forks_total)

Tell me what you think. If you have any questions I can explain further.
I think I have a general idea of how to fix this. I would like to give it a shot if possible.
Thanks.

Issue seems to be in the handlers.go file. Whenever the code checks if the query is made in realtime it doesn't convert the ctx.Time variable to milliseconds.
Since the other variable(RequestExtents.End)  being used for comparison is in milliseconds the resulting difference becomes much higher than most step boundaries.

@arsenakishev Thanks for finding this and for the PR, looks like it indeed fixed this one up!


Sports Scores and Statistics

It can be of two types-
Firstly it can provide the data to any newbie like if I'm new to football and I want to understand it, It can provide me relevant details instead of difficult and meaningless descriptions.
Secondly Creating a module that scrapes sports scores, player statistics, and team information from sports websites or APIs. Users can specify the sport, league, or teams of interest and gather data such as match results, player performance, standings, or upcoming fixtures.
I would like to work on the issue

@nikhil25803  can I know the exact issue like what you want to make us to do ?

Great idea @Veena4512. But you have to choose one sports site which you will use to scrape data. Which website or platform are you ar looking to scrape? Do mention, please.

@nikhil25803  sir I guess you should tag @VardaPanchal005

@VardaPanchal005 if you want to collaborate please let me know.

@VardaPanchal005 if you want to collaborate please let me know.

Sure

Great idea @Veena4512. But you have to choose one sports site which you will use to scrape data. Which website or platform are you ar looking to scrape? Do mention, please.

Maybe sites like NBA  or AFL.

can i take this up?

Should I go ahead ? @nikhil25803

Go ahead @VardaPanchal005


Email validation lower case

Good job Alfred. Your form works very well!
The only thing is that your regex validation does not work for just lower case characters.
You can try this one:
/[a-z]+[@].[a-z]+.[a-z]{2,3}/
(:

Thank you


Confusing error message when approving Collective that has since applied to another host

This Collective applied to OSC. But when I clicked "approve" from the email notification, I got this error:

When I looked at the Collective page I realised they have since decided to apply to another host and are in pending status with them (Sarapis). I think I got that error because I'm not admin of the other host.
However this is confusing because it references "opensource" in the error, which I am an admin of (by the way it should should the host name not the slug here anyway).
In this scenario, the error should be "This Collective has decided to apply to another host and therefore could not be approved." or something like that.

Some context, the URL you landed on was https://opencollective.com/opensource/collectives/74101/approve and was generated on December 18th.
However, since ttps://github.com/opencollective/opencollective-api/pull/3059, for security reasons, we don't do this kind of actions anymore, we're just directing the user to the Host Dashboard.
While we'll still have Collectives changing hosts before approval, this precise situation and the error message should not happen in the future.


Recent project name in WandbLogger ignores env var WANDB_PROJECT

Bug description
This change https://github.com/Lightning-AI/lightning/pull/14145/files#diff-fb7a6ccc19c8344d78090c02d77175ad3f9699a8bc0e4ab26345855023ce3c12R37-R42 didn't take into account Weights and Biases users using the WANDB_PROJECT environmental variable to set the project name https://docs.wandb.ai/guides/track/advanced/environment-variables
How to reproduce the bug
export WANDB_PROJECT=my-project-name
# launch training job

Error messages and logs
Result: WANDB_PROJECT gets ignored and overwritten by the new default project: str = "lightning_logs", https://github.com/Lightning-AI/lightning/blob/46548337def198216b4e3000ef08b06c9c11816d/src/pytorch_lightning/loggers/wandb.py#L302
Environment

Current environment
#- Lightning Component (e.g. Trainer, LightningModule, LightningApp, LightningWork, LightningFlow): Trainer
#- PyTorch Lightning Version (e.g., 1.5.0): 1.8.4.post0
#- PyTorch Version (e.g., 1.10): 1.12.1
#- Python version (e.g., 3.9): 3.8.13
#- OS (e.g., Linux): Linux
#- CUDA/cuDNN version: 515.65.01 CUDA Version: 11.7
#- How you installed Lightning(`conda`, `pip`, source): pip
#- Running environment of LightningApp (e.g. local, cloud): local

More info
No response
cc @awaelchli @morganmcg1 @borisdayma @scottire @manangoel99

@elgalu Thanks for reporting. I think we want to keep the default at lightning_logs, but perhaps need to handle the special case of the env var.

Are you interested in making a contribution? :)

Maybe someone from WandB with experience in not hard-coding project names https://github.com/wandb/wandb/commit/238d3a6b51397305d60916fac851d2bae5ccc1e4 like @raubitsj

Hi! I can take this one


Add support for auth_provider to iWorkflow ManagementRoot

Small change to enable auth_provider (e.g. LDAP/AD authentication for iWorkflow + REST proxy).
Cloning behaviour (if auth_provider else token) from f5.bigip.BaseManagement.
Tested with iWorkflow 2.3.0 (as REST proxy) and BIG-IP 13.0 (being proxied to).

lgtm


Payload not passed to items

About this issue
I don't get the payloads in my items. So far I made sure that following preconditions are met:

items have a stable id
no ItemAnimator is set

Setup
mAdapter = new EndlessFastItemAdapter<IItem>();
mAdapter
		.withEndlessScroll(endlessScroll)
		//.withPositionBasedStateManagement(false)
		.withEventHook(new DisplayedItem.ItemEvent(this, true));
mAdapter.set(SidebarUtil.getDisplayedSidebarItems(mSidebarItemsFiltered, showSections, showSectionsCounter, mHandle, mSidebar, mFilter, mSidebarCalculator));

int rowHeight = (getScreen().y - mSidebar.calcPagePaddingTop(getContext()) - mSidebar.calcPagePaddingBottom(getContext())) / pageRows;
int headerHeight = (int) getContext().getResources().getDimension(R.dimen.header_height);
mFastScrollAdapter = new FastScrollIndicatorAdapter<>(pageCols, rowHeight, headerHeight);
// make sure adapters has stable ids
mAdapter.setHasStableIds(true);
rvSidebar.setAdapter(mFastScrollAdapter.wrap(mAdapter));

rvSidebar.setItemAnimator(null);
rvSidebar.setAnimation(null);
rvSidebar.setLayoutAnimation(null);

Item
public class DisplayedItem extends AbstractItem<DisplayedItem, DisplayedItem.ViewHolder> implements IDraggable<DisplayedItem, DisplayedItem> {

	private DisplayedItem(IFolderOrSidebarItem data, ...) {

		// make sur ewe have stable ids even for new items with the same data
		withIdentifier(data.getRowId());
	}
}

Filtering
public void onFilter(FilterJob.FilterEvent event) {
	mAdapter.set(event.items);
        mAdapter.notifyItemRangeChanged(0, mAdapter.getItemCount(), DisplayedItem.SELECTED_TEXT_CHANGED_ONLY);
}

So don't see any reason why the RecyclerView should not reuse my views. I'm filtering in a background job manually, create new items (data items) in there and then update my adapter. Any ideas what else could break the payload here?
Details

Used library version: 3.2.2
Used support library version: 26.1.0
Used gradle build tools version: 4.4.1
Used tooling / Android Studio version: 3.0.1
Other used libraries, potential conflicting libraries

@MFlisar does the notify also happen on the background job? This might be the cause of the issue.
Otherwise. usually the ItemAnimator could alter that behaviour. (but you already disabled it)
Other than this I don't see a reason why the RecyclerView shouldn't forward it.
This is a RecyclerView "problem" though, as the FastAdapter itself only forwards the payload to the notify method, and then forwards it in the item. So it actually does not adjust any of this behaviour :)
Please let me know if you figure out more. Would be interesting

Notification is done on main thread
It looks like FastItemAdapter.set already triggers notifications, because my RecyclerView is updating if I change my filter code to following:
public void onFilter(FilterJob.FilterEvent event) {
    mAdapter.set(event.items);
    // no notifying here!
}

No need for notifying the adapter. Is this the normal behaviour? I thought if I use set instead of setNew I'm responsible to to notify the adapter about changes manually

@MFlisar no all methods of the adapter call the notify methods accordingly

If I want to replace all items with a new list AND use a payload, is this possible?

@MFlisar no. The RecyclerView.Adapter does not provide a notify method with payload.

https://developer.android.com/reference/android/support/v7/widget/RecyclerView.Adapter.html#notifyDataSetChanged()


Segfault while compiling on windows with pony 0.22.3

Here's a minimal example.
actor Main
  new create(env: Env) =>
    foo()

  fun foo() =>
    @bar[None](addressof baz)

  fun baz() =>
    None

The error is the following:
Generating
 Reachability
c:\projects\ponyc\src\libponyc\type\cap.c:710: cap_view_upper: Assertion `0` failed.

Backtrace:
  () [00007FF72FDD375D]
  () [00007FF72FD8CE44]
  () [00007FF72FD8FE99]
  () [00007FF72FD8FA88]
  () [00007FF72FD8EE97]
  () [00007FF72FD8F844]
  () [00007FF72FD8F89D]
  () [00007FF72FD8869C]
  () [00007FF72FDA38D7]
  () [00007FF72FDA31CA]
  () [00007FF72FDA433C]
  () [00007FF72FDA4B73]
  () [00007FF72FDA4ED1]
  () [00007FF72FDA4ED1]
  () [00007FF72FDA548F]
  () [00007FF72FDAD342]
  () [00007FF72FD6C5FA]
  () [00007FF72FD3145F]
  () [00007FF72FD315E0]
  (pony_asio_event_set_writeable) [00007FF730E07A5C]
  (BaseThreadInitThunk) [00007FFE13E03034]
  (RtlUserThreadStart) [00007FFE141F1551]
This is an optimised version of ponyc: the backtrace may be imprecise or incorrect.
Use a debug version to get more meaningful information.

Moving the code from foo to create removes the segfault.
Removing the addressof this.baz from the arguments also removes the segfault.
Edit: All edits to reduce example code size.

Can reproduce on OSX.

backtrace:
* thread #1: tid = 0x113a57, 0x00007fff8c223f06 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
    frame #0: 0x00007fff8c223f06 libsystem_kernel.dylib`__pthread_kill + 10
libsystem_kernel.dylib`__pthread_kill:
->  0x7fff8c223f06 <+10>: jae    0x7fff8c223f10            ; <+20>
    0x7fff8c223f08 <+12>: movq   %rax, %rdi
    0x7fff8c223f0b <+15>: jmp    0x7fff8c21e7cd            ; cerror_nocancel
    0x7fff8c223f10 <+20>: retq
(lldb) bt
* thread #1: tid = 0x113a57, 0x00007fff8c223f06 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff8c223f06 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff9a8224ec libsystem_pthread.dylib`pthread_kill + 90
    frame #2: 0x00007fff8ab476df libsystem_c.dylib`abort + 129
    frame #3: 0x00000001001250f3 ponyc`ponyint_assert_fail(expr="0", file="src/libponyc/type/cap.c", line=710, func="cap_view_upper") + 403 at ponyassert.c:60
    frame #4: 0x0000000100100c61 ponyc`cap_view_upper(left_cap=TK_AT, left_eph=TK_NONE, right_cap=0x00007fff5fbfe5cc, right_eph=0x00007fff5fbfe5c8) + 753 at cap.c:710
    frame #5: 0x0000000100110884 ponyc`viewpoint_upper(type=0x0000000107efd040) + 660 at viewpoint.c:221
    frame #6: 0x0000000100110563 ponyc`viewpoint_type(l_type=0x0000000107effc00, r_type=0x0000000107efd080) + 1587 at viewpoint.c:135
    frame #7: 0x0000000100110f8d ponyc`replace_type(astp=0x00007fff5fbfe8c8, target=0x0000000107f01a00, with=0x0000000107efd0c0) + 717 at viewpoint.c:377
    frame #8: 0x0000000100110cae ponyc`viewpoint_replace(ast=0x0000000107efd180, target=0x0000000107f01a00, with=0x0000000107efd0c0, duplicate=false) + 158 at viewpoint.c:398
    frame #9: 0x0000000100111015 ponyc`viewpoint_replacethis(ast=0x0000000107efd180, with=0x0000000107efd0c0, duplicate=false) + 69 at viewpoint.c:405
    frame #10: 0x0000000100106343 ponyc`deferred_reify(deferred=0x0000000107efc300, ast=0x000000010a2de240, opt=0x00007fff5fbff7e0) + 67 at reify.c:296
    frame #11: 0x00000001000f8dd3 ponyc`set_method_types(r=0x00000001082a0100, m=0x0000000107ef6880, opt=0x00007fff5fbff7e0) + 195 at reach.c:192
    frame #12: 0x00000001000f6dc6 ponyc`add_rmethod(r=0x00000001082a0100, t=0x0000000107efa900, n=0x0000000107ef6800, cap=TK_AT, typeargs=0x0000000000000000, opt=0x00007fff5fbff7e0, internal=false) + 502 at reach.c:371
    frame #13: 0x00000001000f7681 ponyc`add_nominal(r=0x00000001082a0100, type=0x0000000107efc040, opt=0x00007fff5fbff7e0) + 1249 at reach.c:914
    frame #14: 0x00000001000f6a4a ponyc`add_type(r=0x00000001082a0100, type=0x0000000107efc040, opt=0x00007fff5fbff7e0) + 186 at reach.c:990
    frame #15: 0x00000001000fa26a ponyc`reachable_ffi(r=0x00000001082a0100, reify=0x0000000107efeb80, ast=0x000000010ab550c0, opt=0x00007fff5fbff7e0) + 586 at reach.c:1135
    frame #16: 0x00000001000f93f5 ponyc`reachable_expr(r=0x00000001082a0100, reify=0x0000000107efeb80, ast=0x000000010ab550c0, opt=0x00007fff5fbff7e0) + 597 at reach.c:1196
    frame #17: 0x00000001000f9a47 ponyc`reachable_expr(r=0x00000001082a0100, reify=0x0000000107efeb80, ast=0x000000010ab54bc0, opt=0x00007fff5fbff7e0) + 2215 at reach.c:1307
    frame #18: 0x00000001000f64ac ponyc`handle_method_stack(r=0x00000001082a0100, opt=0x00007fff5fbff7e0) + 108 at reach.c:1383
    frame #19: 0x00000001000f61b2 ponyc`reach(r=0x00000001082a0100, type=0x00000001082a3340, name="create", typeargs=0x0000000000000000, opt=0x00007fff5fbff7e0) + 82 at reach.c:1413
    frame #20: 0x000000010004f973 ponyc`genexe(c=0x00007fff5fbff2e8, program=0x000000010b1bfd40) + 435 at genexe.c:504
    frame #21: 0x000000010003dd2e ponyc`codegen(program=0x000000010b1bfd40, opt=0x00007fff5fbff7e0) + 302 at codegen.c:874
    frame #22: 0x00000001000cc013 ponyc`generate_passes(program=0x000000010b1bfd40, options=0x00007fff5fbff7e0) + 51 at pass.c:360
    frame #23: 0x0000000100001c91 ponyc`compile_package(path=".", opt=0x00007fff5fbff7e0, print_program_ast=false, print_package_ast=false) + 177 at main.c:67
    frame #24: 0x0000000100001abc ponyc`main(argc=1, argv=0x00007fff5fbff8d8) + 316 at main.c:108
    frame #25: 0x00007fff9e1ad5ad libdyld.dylib`start + 1

The following also compiles:
actor Main
  new create(env: Env) =>
    foo()

  fun foo() =>
    None

  fun baz() =>
    @bar[None](addressof baz)

Could be related to the deferred_reify changes that @Praetonus worked on somewhat recently?

Can someone test this with code prior to #2557 being merged to master? If using a release, that would be 0.21.3?

I tested this with 0.21.3 and it crashes as well, so not introduced by #2557.

Still present as of 0.37.0


Added new comparator record filter

The new filter process each record in the pipeline and compare them with a reference record. The reference record could be a single value like a collection. Also the type could be different compare to the type of the record processed. If the filtering logic is passed, the record is returned, "null" otherwise.
The final user must to be provide only the custom logic to compare the records.

Coverage increased (+0.06%) to 80.435% when pulling 1208adcfd5e7714db4516136725802fe4c9e32c5 on DanieleS82:feature/comparatorfilter into a5a0c61c254a3674497c8348d247009bd8112e56 on j-easy:master.

Hi,
Good idea, thank you!
I'll get back to you soon to see how to merge this PR.
Kr
Mahmoud

Hi @DanieleS82
It is always difficult to decide which feature should go into the framework and which one should be left to the user. Here, I can implement the requirement of filtering records against some reference data like this:
List<String> referenceData = Arrays.asList("foo", "bar");
List<String> data = Arrays.asList("foo", "bar", "baz", "blah");

JobBuilder.aNewJob()
               .reader(new IterableRecordReader(data))
               .filter(record -> referenceData.contains(record.getPayload()) ? record : null)
               .writer(new StandardOutputRecordWriter())
               .build()
               .call(); // prints: foo bar

Do you think we really need the help of the framework to do this?
Kr
Mahmoud

Hi,
normally the frameworks provide a lot of functionalities out of the box because this help to implement our projects. I think the same idea have guide the implementation of Easy Batch and many component in the framework. Examples are the filters, the readers, the writers and so on.
My component cover only another common user story where one record must to be compare with another record. In my test I had implement a very basic comparing method, but in real word the comparing logic could be more complex, so could be difficult use a lambda expression to do it. And lambda expression are available only if the project is JDK 8 or later.
I thought it could be great to provide this use case out of the box, but you are free to not include it.
What do you think?

Hi,

normally the frameworks provide a lot of functionalities out of the box because this help to implement our projects

"a lot" here should not be confused with "everything". For me, frameworks should provide most common components out of the box and provide a way to extend/add features easily. Each user has its own specific use case and we can't end up with all requirements provided out of the box. Do you agree?

In my test I had implement a very basic comparing method, but in real word the comparing logic could be more complex, so could be difficult use a lambda expression to do it. And lambda expression are available only if the project is JDK 8 or later.

Even without a lambda, I don't see a real added value of the component:
@Test
public void compareToReferenceData() throws Exception {
    final List<String> referenceData = Arrays.asList("foo", "bar");
    List<String> data = Arrays.asList("foo", "bar", "baz", "blah");

    JobBuilder.aNewJob()
            .reader(new IterableRecordReader(data))
            .filter(compareTo(referenceData))
            .writer(new StandardOutputRecordWriter())
            .build()
            .call(); // prints: foo bar

}

private RecordFilter compareTo(final List<String> referenceData) {
    return new RecordFilter() {
        @Override
        public Record processRecord(Record record) {
            // This logic can be as complex as we want
            return referenceData.contains(record.getPayload()) ? record : null;
        }
    };
}

IMO, unlike the FilteredRecordsSavingRecordFilter, this component should not go in the framework.
I really appreciate your effort!
Kr
Mahmoud

Hi,

...For me, frameworks should provide most common components out of the box and provide a way to extend/add features easily. Each user has its own specific use case and we can't end up with all requirements provided out of the box. ...

I agree, it's exactly why I done the component, is a very common task that I think could have sens provide as template :). But I understand your point to prevent to introduce everything.
What I like of my solution it focus the attention to write reusable components that are type safe at compile time.  Yes, I can do also with your solution:
private RecordFilter<Record<String>> compareTo(final List<String> referenceData) {
return new RecordFilter<Record<String>>() {

  @Override
  public Record<String> processRecord(Record<String> record) {
    // This logic can be as complex as we want
    return referenceData.contains(record.getPayload()) ? record : null;
  }

};
}

...but I find this less elegant.
I have start to use a lot your framework, so I hope to give more contributions.
Kr
Daniele

I find this less elegant.

Blame Java 7, it's very elegant with a lambda.
But that's not the point at all, even with Java 7 it is fine for me.
The point is about the added value of the component you suggest

the component, is a very common task

You think this is a common use case. I think this is a specific use case.

But I understand your point to prevent to introduce everything

Great! Thank you for your undestanding. In this case, let me close this issue.
I appreciate your effort.


Fix 15288

For #15288
Use replaceAll when replacing separators

Closing this since we have not heard back in a while


Can't change 3D touch gesture for submissions back to "peek"

It doesn't seem to be in the list.

It is "none" in the list, I will change the wording though!

Done!


Remove Heroku from install choices

As indicated in several issues (1, 2), we can no longer maintain our compatibility patches originally implemented for Kong 0.7, because the Kong CLI has been substantially rewritten in 0.9.
The beleaguered Heroku Kong 0.7 app & buildpack have been updated with "outdated" warnings.
Please remove Heroku from the official install choices by merging this changeset.

CC: @sinzone @thefosk

Thanks @mars. In the future, the Kong CLI will be dropped to better fully integrate with Nginx, meaning Nginx will always be the only - and foreground - process.

Merged. Sorry for the delay on our side, been really busy with the 0.10 release and other things... Thanks again.


StableHLO to adopt signful integer semantics

StableHLO, as bootstrapped from MHLO, inherits signless integers which was added in MHLO for some legacy reasons. The goal here is for StableHLO to adopt signfull semantics instead with signed and unsigned integer variants.

The spec draft is now signful, the dialect (forked from MHLO) and the interpreter (synced with the dialect) are signless at the moment.

Last week worked mostly on adding specs and designing interpreters. No work related to this issue. I will try to prioritize this by the end of this week.

Updating the StableHLO dialect will be a lot of work, especially given the implications for the interop, so it'll take quite a bit of time. Given the near-term focus on completing the spec, unassigning this ticket for now.


Container names revert to UUID after service upgrade

Rancher Version: 1.0.1
Docker Version: 1.10.3
OS and where are the hosts located? (cloud, bare metal, etc): VMware virtual machines on our own bare-metal
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB) Single node, internal DB with external volume mount
Environment Type: (Cattle/Kubernetes/Swarm/Mesos) Cattle
Steps to Reproduce: Deploy a stack then upgrade a service
Results: The container name for that service reverts to a UUID
Expected: The container name should stay the same (or increment in some way)
The forum thread for this is at https://forums.rancher.com/t/container-names-changed-back-to-uuid/2884/5. Basically, I'm trying to do log searches based on container names like r-stack_service_*. But after an upgrade to the service it reverts to a UUID name which breaks my log searching.

I confirm this bug in Rancher V1.0-dev5. This effectively means that io.rancher.container.hostname_override: container_name is not very useful since it will be lost during an upgrade.

With 1.0.1 same problem when I remove container and rancher recreate it (scale 1)

Same problem with 1.1.1

Same error with 1.1.1 and 1.1.2

We are having the same issue on 1.1.3 and this is a major issue for us...

In 1.2 they will consistently be r-{container name}-{first segment of uuid}.

Does that mean secrets-bridge will behave correctly in v1.2? Right now it takes 1 out of 5 tries to get it working because the name keeps changing to the uuid (/cc @cloudnautique).

Tested with v1.2.0-pre4-rc7. The container names remained in the format r-{container name}-{first segment of uuid} before and after upgrade
Before upgrade:
4f5ecb717cc6        busybox                         "/.r/r sleep 1000"       25 minutes ago      Up 9 minutes                                    r-logtestnew-test-1-22658493

After upgrade:
77cde00dcefb        busybox                         "/.r/r sleep 1000"       17 seconds ago      Up 16 seconds                                   r-logtestnew-test-1-3802d326


The Gradle plugin tasks should extend SourceTask

Taking a note from how Gradle's own code quality plugins are done, the Detekt Gradle tasks should inherit from SourceTask, a specialised subclass of DefaultTask (what it's using now). The validation tasks (e.g., detektCheck) should also implement VerificationTask and Reporting<DetektReports> (where DetektReports extends ReportContainer<SingleFileReport>) to align to the built-in Gradle Checkstyle/PMD/Findbugs/... plugins.
Thoughts?

I 100% agree, and had started doing a bit of work to modernise the Gradle integration to better align with the code quality plugins. I put it on hold because I'm working on making detekt work as a Kotlin compiler plugin (so it hooks into the compilation process in a similar way to Error Prone). Making this work requires substantial changes to the Gradle integration. I should have something to share in a day or two, I was actually working on the Gradle integration part yesterday.
It probably makes sense to wait for that before changing the DSL and updating the Gradle plugin internals, because there might be other internal changes to be made to support that.

A couple of other interesting classes: CodeQualityExtension, VerificationTask, Reporting. AbstractCodeQualityPlugin is probably useful but is in a package marked "internal" so probably shouldn't be used.

Yep, agree both @rock3r @3flex . This issue is linked to #540 and #542 . Rework is planned after @3flex 's work.

I do think AbstractCodeQualityPlugin is the way to go even if it is internal. I mean what could possible go wrong?
But I do not see the benefit implemening any of this classes yet ...
I have to override so many methods and the api is like ''I Have No Idea What I'm Doing'' ...

Closing this as the reworked plugin has been merged.


Update CI workflow to 2024 images.

Updated CI workflow to 2024 docker images.

Thanks for reviewing! I had kept 2020 since it was C++14 but I just realized I already have a C++14 build in the latest images section. I'll remove it!


Volume metrics

Is your feature request related to a problem? Please describe.
I am trying to monitor PVs and am not able to get the kubelet_volume_stats_available_bytes because it is no longer supported by default in the node exporter.
Describe the solution you'd like
Include the metrics similar to how the AWS EBS CSI driver did it.  I think CSI drivers themselves need to implement these metrics since k8s v1.13 or something around there though I could be wrong.
Issue: https://github.com/kubernetes-sigs/aws-ebs-csi-driver/pull/524
PR: https://github.com/kubernetes-sigs/aws-ebs-csi-driver/pull/677
Describe alternatives you've considered
I've been trying to get my relabel configs right to monitor a group of PVs and am not able to get the PV name out of the node exporter to be able to match node_filesystem_free_bytes to the right PV. This is broadly needed to monitor sensitive PVs running on VKE that might need volumes added to the array as they will up.

@robcxyz This feature has been implemented into the CSI as of v0.9.0 #115


Spirv-fuzz: Add tests for MaybeGet* functionalities in fuzzer util

This PR will solve #4179 by adding unit testing for all maybeGet* functions in fuzzer_util.
The following unit testing has been added and ready to review:

fuzzer_util_maybe_find_block_test.cpp
fuzzer_util_maybe_get_bool_type_test.cpp
fuzzer_util_maybe_get_float_type_test.cpp
fuzzer_util_maybe_get_integer_type_test.cpp
fuzzer_util_maybe_get_pointer_type_test.cpp
fuzzer_util_maybe_get_struct_type_test.cpp
fuzzer_util_maybe_get_void_type_test.cpp
fuzzer_util_maybe_get_bool_constant_test.cpp

Questions remain to be addressed:

fuzzer_util_maybe_get_float_constant_test.cpp
fuzzer_util_maybe_get_integer_constant_test.cpp
fuzzer_util_maybe_get_integer_constant_from_value_and_type_test.cpp
fuzzer_util_maybe_get_composite_constant_test.cpp
fuzzer_util_maybe_get_zero_constant_test.cpp

I got ERROR: constant_shader.frag:14: '=' :  cannot convert from ' const int' to ' temp mediump uint' when I try to use uint. Should I try with a different percision? My current one is
#version 310 es
precision highp float;

Potential bug (or misuse on my end):
The only issue I found out was with fuzzer_util_MaybeGetStructType. Consider the following shader script:
%6 = OpTypeInt 32 1
%7 = OpTypeFloat 32
%8 = OpTypeStruct %6 %7

fuzzer_util_MaybeGetStructType ideally should take ir_context and std::vector<uint32_t)(6,7) as parameters and return 8 for the result id, but the following validation failed, as OpTypeStruct with the result id 8 cannot be found:
ASSERT_TRUE(fuzzerutil::MaybeGetStructType(ir_context, std::vector<uint32_t>(6, 7))==8);

And in the implementation of MaybeGetStructType, since there cannot be function type ids in the vector parameter, it might be better to assert that function ids cannot appear in the vector.

Questions related to MaybeGetFloatConstant and MaybeGetIntegerConstant.
For MaybeGetIntegerConstant, I figured that for a positive integer, the test would be something like this example:
frag script int i = 100
compiled shader: %25 = OpConstant %20 100
We have a id of 25 for this constant, so we should have:
fuzzerutil::MaybeGetIntegerConstant(ir_context, transformation_context,
  std::vector<uint32_t> {100}, 32, true, false) = 25;

where the word vector specify the value of integer with one word and 32 specify the width, this seems more trivial. But how do we get the id of negative integer. It seemed that negative integer is also 32 bit and should have 1 element in the word vector to specify its value, but how do we do that as the word vector consists of type unsigned int.
Similarly with MaybeGetFloatConstant, it looks like float type is also 32 bit and you need at least 2 words for representing its integer part and decimal part, and an additional one for specifying whether the float constant is negative.

For MaybeGetZeroConstant and MaybeGetCompositeConstant, where should I found composite_type_id and scalar_or_composite_type_id. There should be a corresponding ids for each value type, int, float, bool, vector, etc.

I got ERROR: constant_shader.frag:14: '=' : cannot convert from ' const int' to ' temp mediump uint' when I try to use uint. Should I try with a different percision? My current one is
#version 310 es
precision highp float;

similar to double, which is a 64 bit. I probably need to have double type too for more comprehensive testing.

It's unlikely to do with precision and more likely to do with you relying on an implicit conversion from int to uint. In GLSL types are really explicit, so for example you can't do:
uint x = 2;

You have to do:
uint x = 2u;

where 2u is an unsigned literal. You can use uint(expr) to convert expr from various types to uint.
Does that help?

Potential bug (or misuse on my end):
The only issue I found out was with fuzzer_util_MaybeGetStructType. Consider the following shader script:
%6 = OpTypeInt 32 1
%7 = OpTypeFloat 32
%8 = OpTypeStruct %6 %7

fuzzer_util_MaybeGetStructType ideally should take ir_context and std::vector<uint32_t)(6,7) as parameters and return 8 for the result id, but the following validation failed, as OpTypeStruct with the result id 8 cannot be found:
ASSERT_TRUE(fuzzerutil::MaybeGetStructType(ir_context, std::vector<uint32_t>(6, 7))==8);

As a style point, I would write this as:
ASSERT_EQ(8, fuzzerutil::MaybeGetStructType(ir_context, {6, 7});

But you are right: I would expect this assertion to pass (in either form). Probably best if you update your PR to include a test with such an assertion, in the above form, and we can try it out locally if you point us to the specific line of code.

And in the implementation of MaybeGetStructType, since there cannot be function type ids in the vector parameter, it might be better to assert that function ids cannot appear in the vector.

That's a good idea - could you add the assertion in your PR, and add a death test?

For MaybeGetZeroConstant and MaybeGetCompositeConstant, where should I found composite_type_id and scalar_or_composite_type_id. There should be a corresponding ids for each value type, int, float, bool, vector, etc.

As an example (and forgive me if there are typos in what follows!), if you have this:
%10 = OpTypeInt 32 0 // unsigned int type
%11 = OpConstant %10 0 // zero of unsigned int type
%12 = OpConstant %10 0 // another zero of unsigned int type - redundant, but allowed
%13 = OpConstant %10 1 // one of unsigned int type
%14 = OpTypeVector %10 2 // vector of two unsigned ints
%15 = OpTypeVector %10 4 // vector of four unsigned ints
%16 = OpConstantComposite %14 %11 %12 // the vector (0u, 0u)
%17 = OpConstantComposite %15 %12 %13 %12 // the vector (0u, 1u, 0u)

and suppose that there are no "irrelevant" facts, then:
MaybeGetZeroConstant(ir_context, transformation_context, 10, false) should return either 11 or 12 (it will probably return 11 with the current implementation but we don't guarantee this, so tests should not assume it).
MaybeGetZeroConstant(ir_context, transformation_context, 14, false) should return 16 (because it is a 2D zero vector)
MaybeGetZeroConstant(ir_context, transformation_context, 15, false) should return 0 (because there is no 3D zero vector declared)
MaybeGetCompositeConstant(ir_context, transformation_context, { 12, 13, 12 }, 15, false) should return 17 (because %17 declares exactly such a constant)
MaybeGetCompositeConstant(ir_context, transformation_context, { 12, 13, 13 }, 15, false) should return 0 (because no instruction declares such a constant)
Does that help to clarify things?

Does that help?

It surely does!

Potential bug (or misuse on my end):
The only issue I found out was with fuzzer_util_MaybeGetStructType. Consider the following shader script:
%6 = OpTypeInt 32 1
%7 = OpTypeFloat 32
%8 = OpTypeStruct %6 %7

fuzzer_util_MaybeGetStructType ideally should take ir_context and std::vector<uint32_t)(6,7) as parameters and return 8 for the result id, but the following validation failed, as OpTypeStruct with the result id 8 cannot be found:
ASSERT_TRUE(fuzzerutil::MaybeGetStructType(ir_context, std::vector<uint32_t>(6, 7))==8);

As a style point, I would write this as:
ASSERT_EQ(8, fuzzerutil::MaybeGetStructType(ir_context, {6, 7});

But you are right: I would expect this assertion to pass (in either form). Probably best if you update your PR to include a test with such an assertion, in the above form, and we can try it out locally if you point us to the specific line of code.

And in the implementation of MaybeGetStructType, since there cannot be function type ids in the vector parameter, it might be better to assert that function ids cannot appear in the vector.

That's a good idea - could you add the assertion in your PR, and add a death test?

Yes, I will do that.

For MaybeGetZeroConstant and MaybeGetCompositeConstant, where should I found composite_type_id and scalar_or_composite_type_id. There should be a corresponding ids for each value type, int, float, bool, vector, etc.

As an example (and forgive me if there are typos in what follows!), if you have this:
%10 = OpTypeInt 32 0 // unsigned int type
%11 = OpConstant %10 0 // zero of unsigned int type
%12 = OpConstant %10 0 // another zero of unsigned int type - redundant, but allowed
%13 = OpConstant %10 1 // one of unsigned int type
%14 = OpTypeVector %10 2 // vector of two unsigned ints
%15 = OpTypeVector %10 4 // vector of four unsigned ints
%16 = OpConstantComposite %14 %11 %12 // the vector (0u, 0u)
%17 = OpConstantComposite %15 %12 %13 %12 // the vector (0u, 1u, 0u)

and suppose that there are no "irrelevant" facts, then:
MaybeGetZeroConstant(ir_context, transformation_context, 10, false) should return either 11 or 12 (it will probably return 11 with the current implementation but we don't guarantee this, so tests should not assume it).
MaybeGetZeroConstant(ir_context, transformation_context, 14, false) should return 16 (because it is a 2D zero vector)
MaybeGetZeroConstant(ir_context, transformation_context, 15, false) should return 0 (because there is no 3D zero vector declared)
MaybeGetCompositeConstant(ir_context, transformation_context, { 12, 13, 12 }, 15, false) should return 17 (because %17 declares exactly such a constant)
MaybeGetCompositeConstant(ir_context, transformation_context, { 12, 13, 13 }, 15, false) should return 0 (because no instruction declares such a constant)
Does that help to clarify things?

Yes, I think that helps a lot. Thanks.

Questions related to MaybeGetFloatConstant and MaybeGetIntegerConstant.
For MaybeGetIntegerConstant, I figured that for a positive integer, the test would be something like this example:
frag script int i = 100
compiled shader: %25 = OpConstant %20 100
We have a id of 25 for this constant, so we should have:
fuzzerutil::MaybeGetIntegerConstant(ir_context, transformation_context,
  std::vector<uint32_t> {100}, 32, true, false) = 25;

where the word vector specify the value of integer with one word and 32 specify the width, this seems more trivial. But how do we get the id of negative integer. It seemed that negative integer is also 32 bit and should have 1 element in the word vector to specify its value, but how do we do that as the word vector consists of type unsigned int.
Similarly with MaybeGetFloatConstant, it looks like float type is also 32 bit and you need at least 2 words for representing its integer part and decimal part, and an additional one for specifying whether the float constant is negative.
P.S: also with function:
uint32_t MaybeGetIntegerConstantFromValueAndType(opt::IRContext* ir_context,
                                                 uint32_t value,
                                                 uint32_t int_type_id);

It seemed like it cannot find the id of negative integer with only unsigned value parameter.

The vector part is resolved. It's a typo that makes {} to (). Rather than having two elements, using () initialized an array with first number indicating the number of elements and the second one the value for each element. It's just a typo.

This is superceded by #4284.


Could BrowserContext load iframe content automatic？

Now，it could not render iframe content in html page.

Yes, it can load the content automatically. You need to enable resource loading, however. I can only give you further advice if you provide more information (e.g., the configuration you pass on to the browsing context).


How can we manage folders with proper name in 'pyrwen.jobs'

Hi there, I'm testing with Pywren and there are folders for pywren jobs. I wonder how can I give them proper names when they are created?

Thanks!

@Vaishaal Thanks for your reply! That would be great and looking forward to it.


middleware does not exist

Do you want to request a feature or report a bug?

Bug

What did you do?

What did you expect to see?
What did you see instead?
Meddleware does not exist when my middleware exceeds a certain amount( maybe 900)

Output of traefik version: (What version of Traefik are you using?)

2.0.5

What is your environment & configuration (arguments, toml, provider, platform, ...)?
provider: kubernetescrd
platform: Ubuntu 18.04.1
kubernet: v1.13.4

If applicable, please paste the log output in DEBUG level (--log.level=DEBUG switch)
(paste your output here)

middleware
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
creationTimestamp: "2020-04-24T02:23:03Z"
generation: 5
name: ai.ai-api-web.path
namespace: qa
resourceVersion: "126476632"
selfLink: /apis/traefik.containo.us/v1alpha1/namespaces/qa/middlewares/ai.ai-api-web.path
uid: 86c58529-85d2-11ea-8a41-005056ad49fb
name: ai.ai-api-web.path
spec:
stripPrefix:
prefixes:
- /
ingressroute
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
creationTimestamp: "2020-04-24T02:23:04Z"
generation: 1
name: ai.ai-api-web
namespace: qa
resourceVersion: "126438449"
selfLink: /apis/traefik.containo.us/v1alpha1/namespaces/qa/ingressroutes/ai.ai-api-web
uid: 86e4e23e-85d2-11ea-8a41-005056ad49fb
name: ai.ai-api-web
spec:
entryPoints:

web
routes:
kind: Rule
match: Host(qa.ai.lls.com) && PathPrefix(/)
middlewares:

name: ai.ai-api-web.path
namespace: qa
services:
name: ai-api-web
port: "80"

global:

--api.insecure=true
- --accesslog
- --entrypoints.web.Address=:80
- --entrypoints.websecure.Address=:443
- --providers.kubernetescrd
- --certificatesresolvers.default.acme.tlschallenge
-<EMAIL_ADDRESS>- --certificatesresolvers.default.acme.storage=acme.json
- --certificatesresolvers.default.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory

Hi! I'm Træfiker :robot: the bot in charge of communication regulation.
Thanks for your interest in Traefik!
We dedicate the issue tracker to bug reports and feature requests only. My advanced AI has spotted that your issue might be a configuration problem or relates to something that doesn't look like a bug.
To confirm this, please join our Community Forum and reach out to us on the Traefik section.
In case I'm wrong (well, that would be embarrassing :sweat_smile:), my developers will re-open the issue and fix me!
In the meantime, you can double check Traefik's documentation.


PHOENIX-7057 Potential bug in MetadataEndpointImpl#updateIndexState.

Thanks for the review @shahrs87 .
As this code is only used for the old non globally consistent index implementation, and the bug comes from a copy-paste error in my refactor, I wouldn't spend a lot of time on writing a test for this.


Add possibility to add @class for selected classes instead #import

You know, when you are in .h file and want add property, normally u should use
@class ClassName;
instead
#import "ClassName.h";
Would be nice to get this feature)
And thanks for awesome plugin ^_^

+1


heatmaps

Hi,
Check line 214 of cli.py should be:
model_path=Path(c.model_path),
Also,
in heatmaps.main
line 106 hardcodes 256 as "microns". I had changed it to a different values (112, 224, 448 to test resolutions) and the top tiles showed wrong mappings. I noticed because I got many completely blank tiles as the 8 top.
There is other 256 in line 71 but I think this only scales the thumbnail and is ok independently of the microns defined for preprocessing.
For heatmaps, it would be great if asterisk could be expanded to a list of different files or the files listed in a file.

@cornzz could you check out heatmaps.main with the issue above? I assumed only 10x at the time for the protocol and doesn't scale to other options


Heatmaps

I know your plugin does not implements "heatmaps" but do you know an alternative to represent "heatmaps" with your plugin? I find Google maps javascript api too slow, so I would use this plugin, but without heatmaps, a new obstacle appears

I'm sorry... Wish I had an answer but you will need to stick with JS v3 :-(


Fr traduction error

Hello, I selected fr(french) local and I have november (english) instead of novembre(french).
in i18n_model.dart change line 326 (november ) by novembre :)
thank you

Hi
Thanks for pointing the typo, I've fixed in Github, and will push to pub.dev ASAP


fix: [IDP]: Updated docs on harness.io/services annotation being optional for Policy Evaluation and STO stages based checks

Thanks for contributing to the Harness Developer Hub! Our code owners will review your submission.
Description

Please describe your changes: __________________________________
Jira/GitHub Issue numbers (if any): ______________________________
Preview links/images (Internal contributors only): __________________

PR lifecycle
We aim to merge PRs within one week or less, but delays happen sometimes.
If your PR is open longer than two weeks without any human activity, please tag a code owner in a comment.
PRs must meet these requirements to be merged:

[ ] Successful preview build.
[ ] Code owner review.
[ ] No merge conflicts.
[ ] Release notes/new features docs: Feature/version released to at least one prod environment.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6746e2c6ca057ac093a898b8--harness-developer.netlify.app


Adding button to list view that makes an Ajax call

Here ist my situation:
I have a list view of order data that contains a column "Paid"
having a boolean value 0/1 (paid/unpaid).
What I want to achieve is add a button in each row and when this
button is pressed, the database value of the "Paid" column should
be toggled for the row. I have read the button documentation but could not
find an example where a button press triggers an action on the server.
The example with the Google search button does not help me since all
it does is create an external link.
Basically I need the same functionality as the Delete button provides, but
not a Delete but an update of a Model attribute value in the background.
I was thinking about adding a route in Laravel that runs the toggle code
in the database when hit. I would then use this route URL as the "href" value
of the button.
However, I do not know how to properly do this in an Ajax-way since the
route should not be visited in the browser, but just a background call (Ajax)
sending the row ID to the route must be made. And after the press on the button
the table view of course needs to be updated with the new, toggled value.
Is this possible at all with a button in Backpack Crud and could you give
me an indication if my idea with the Ajax-call to a route goes into the right direction?
I assume it is not possible to input a closure as an argument into the button call that would run
the necessary operations when the button is pressed. At least I could not find
it in the Button documentation.
Thank you very much in advance!

Thank you, I found the answer in the brand new docs for 3.5 (bulk updates).


feat: add to default severity levels

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, using fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when the PR gets merged):
Fixes #689
Special notes for your reviewer:

Codecov Report

Merging #695 (a40be85) into main (8ae806a) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #695   +/-   ##
=======================================
  Coverage   14.58%   14.58%
=======================================
  Files          13       13
  Lines        1694     1694
=======================================
  Hits          247      247
  Misses       1419     1419
  Partials       28       28

Flag
Coverage Δ

unittests
14.58% <100.00%> (ø)

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

Impacted Files
Coverage Δ

pkg/scanners/trivy/types.go
23.75% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

The default scanner config in api/v1alpha1/config/config.go will need to be changed as well. There's a var defaultScannerConfig at the top of the file.


Create commands not respecting config file

Hey 👋
It looks like the commands to create files aren't actually linked up to the config setting for integrations_path, like it implies.
I am sure it's a quick fix but I'm flat out this week working on a saloon integration so I can't open a PR for it rn.
Thought the next best thing would be to create an issue incase someone else has time to fix it up or so that other people might find this if they are wondering why its not working.
Thanks for the great package :)

Hey @ClaraLeigh thank you for getting in touch - and thank you for the kind words. I am in the process of reviewing a PR:
https://github.com/saloonphp/laravel-plugin/pull/56
Let me know if that will fix your problem and I will get the PR out as soon as I can!

Perfection 😎

Hey @ClaraLeigh this has now been fixed in the latest release of the saloonphp/laravel-plugin library. :)

Pog ty


Wait until host can resolve clusterhq.com before really provisioning.

Fixes https://clusterhq.atlassian.net/browse/FLOC-1842
(Quite possibly this is not helpful, need to see what happens on buildbot.)

I don't this is the issue. (I can reproduce the issue in a local VM that has a working resolver.


Replace the name by ID of the management group

Tested multiple times, the create blueprint or other api doesn't working with management group name instead of management group id ( literally management group display name, only for display purpose ). In some case ( default way ), the management group name and management group id can be the same, that's why most case it's working, but need clarification in documentation.

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


Halt server if migrations fail on boot

📖 Description
It doesn’t make much sense to start the server if the migrations (that are run on container startup) fail.
📝 Notes
I also updated a few lines based on the mix phx.gen.release --docker template.
🦀 Dispatch

#dispatch/elixir

🦀 Requesting reviewers for this pull request:

@Boubalou (contributor with 0 commits in the last 90 days and 11 commits overall)
@JoeyBG (reviewer for the elixir stack)


devise version 3.5.6 not supported to rails 5.0.0

Yes - we upgrading to Devise 4.0 and 4.2 to use with Rails 5 - Please read our CHANGELOG entries for more details.


Single keyboard shortcut to "send line to FSI" and "send selection to FSI"

Rider has single shortcut for the both actions, which is very convenient: anytime you want to send anything to FSI you just press Ctrl+\.

I think send selection to FSI will work as send line if nothing is selected.

Yeah, it definitely should:
https://github.com/ionide/ionide-vscode-fsharp/blob/15a3a7dfeb6666161967b9eafed1de53fb52eece/src/Components/Fsi.fs#L103-L114


kernel: init: conditional .bss section zeroing

Some platforms already have .bss section zeroed-out externally before the Zephyr initialization and there is no sence to zero it out the second time from the SW.
Such boot-time optimization could be critical e.g. for RTL Simulation.

What happens on a software initiated reboot? Will the BSS get externally reset? If yes, is that guaranteed?

What happens on a software initiated reboot? Will the BSS get externally reset? If yes, is that guaranteed?

Hi @peter-mitsis ,
That's a nice question, thanks! I haven't thought about it. Our basic scenario for this mode is a one-time start of Zephyr within the RTL simulator environment, next we run the test and then terminate the simulation.
I think we should state it more clearly in the description that the .bss zeroing is the responsibility of the tool external to Zephyr including the possible case of Zephyr SW reset scenario.


httpgd plot viewer fail in remote server

Describe the bug
When I press 'Enter & Command', R code can be run in R terminal. However, when I try plotting, httpgd plot viewer can open, showing "Status: 404 Reason: Not Found". By clicking "Open in External Browser" button, I can see the plot.
To Reproduce
see above and screenshot
Do you want to fix by self? (We hope your help!)
No
(If related)setting.json
{
    "r.rterm.option": [
        "--r-binary=/raid1/shiq/app/miniconda3/envs/R/bin/R"
    ],
    "r.rpath.linux": "/raid1/shiq/app/miniconda3/envs/R/bin/R",
    "r.rterm.linux": "/raid1/shiq/app/miniconda3/envs/R/bin/radian",
    "r.bracketedPaste": true,
    "editor.hover.enabled": false,
    "r.plot.useHttpgd": true
}

Expected behavior
httpgd plot viewer can show plot normally
Screenshots

Environment (please complete the following information):

OS: Ubuntu 18.04.2
VSCode Version: 1.63.2
R Version: 4.1.1
vscode-R version: 2.3.6

Additional context
No

May be duplicate of #916, #923.
Please try update the httpgd package.

Yes, installing the latest release of httpgd should resolve this.

Yes, installing the latest release of httpgd should resolve this.

Thanks a lot for your quick reply


Error: "Cannot find Workbook stream" when reading Excel 2007 .xlsx file with protected workbook

First, thanks for the great tool!
When reading an .xlsx file with password protected workbook structure, which was saved by Excel 2007 , I get the following error (xlsx.js version 0.8.0):
Error: Cannot find Workbook stream  xlsx.js:9828:13
When the same file with same workbook protection is saved with newer versions of Excel, the error does not occur and the workbook object can be successfully read.
private loadFile(fileInputChange:Event): void {
          let file = (fileInputChange.target as any).files[0];
          let reader:FileReader = new FileReader();
          reader.onload = function(e) {
              let data = (e.target as any).result;
              let workBook = XLSX.read(data, {type: 'binary'});
              console.log(workBook);
          }
          reader.readAsBinaryString(file);
}

There are two types of "workbook protection": "encrypt with password" and "protect workbook structure":

The latter merely adds a record to the file that disables normal editing, but otherwise leaves the file as-is.  It's a pretty simple feature and we can read/write it! https://github.com/sheetjs/js-xlsx#worksheet-object see the !protect bullet point.
The former is much more complex.  The file is actually encrypted and we would have to manually perform the decryption algorithm.


Remote Logout Flow

I am trying to implement the remote logout flow over this example.
I registered a logout url and I am receiving a request from microsoft. When I log out of office365 rails receives a request with sid and iss
How do I know which user logged out?
I think that I should do this using sid but I didn't find this information during sso

Can you provide more information (link to the flow you're referring to)? This is a little beyond the scope of this sample, but if it's something I can quickly answer I'm happy to help.

I am trying to implement the following flow:
https://docs.microsoft.com/en-us/azure/active-directory/azuread-dev/v1-protocols-openid-connect-code#single-sign-out
I filled the LogoutUrl on this screen: https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationMenuBlade/Authentication/appId/737269e8-e69a-4507-b95c-052aa04a193e/isMSAApp/
and implemented a endpoint. But I couldn't find a way to relate the data received to the user's session

I see. I just tried this here and I see that it passes just the one parameter as a query parameter: sid=xxxx. Their docs don't provide much information on that parameter. Let me ask internally and see what I can find out.

Thank you very much! I've been trying to figure out how to correlate this information all week.

Ok, so the sid value is the session ID. What you're supposed to do is configure your app registration to add this claim to your ID tokens, then save that value with your user info. The sample as it is pretty much ignores the ID token so you'd have to extend the auth provider to dig that information out.
If you need more info on this, I'd recommend posting feedback with the feedback control on https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-protocols-oidc#single-sign-out.


[async-mqtt] update async-mqtt port to 5.1.1

[x] Changes comply with the maintainer guide.
[x] SHA512s are updated for each updated download.
[x] The "supports" clause reflects platforms that may be fixed by this new version.
[x] Any fixed CI baseline entries are removed from that file.
[x] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

Feature tls tested successfully in the following triplet:

x86-windows
x64-windows
x64-windows-static


Support dumping databases with std::duration config vals

Fixes #5520.

@fantix The hack I described as managing to fix the weird state syncing issue (executing a query before entering the transaction) only seems to work when I'm running the test alone. (Which is to say, doesn't really work at all.)
I tried inspecting cfg::DatabaseConfig.query_execution_timeout (instead of cfg::DatabaseConfig.query_execution_timeout), and that gives an empty set.
This is pretty weird on its own since query_execution_timeout is marked as required (though it doesn't have a default).
Could you take a look?

I can reproduce locally, and I feel like there are more than 1 issue. I'm still debugging.

There's another issue with the dump/restore test infra itself, I'm debugging to push another fix.

I confirmed it doesn't seem to affect test time


Can C# 9.0 be used with .NET Core 3.1 ? And is it supported ?

[Enter feedback here]
Can C# 9.0 be used with .NET Core 3.1 ? And is it supported ?
I cant use .NET 5 as I rely on Azure Functions and Durable Functions, which are not supported in .NET 5.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: c36588d0-6bdf-1740-220c-10b20bb88730
Version Independent ID: 587ed47f-f532-e018-9b0d-6ee76afd20e4
Content: What's new in C# 9.0 - C# Guide
Content Source: docs/csharp/whats-new/csharp-9.md
Product: dotnet-csharp
Technology: csharp-whats-new
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

:wave: Hi @pb-qs
C# 9 is not supported on .NET 3.1. You can configure it using the LangVersion element in your project file, but it is not supported.
Closing as an answered question.

Thanks!From: Bill Wagner @.***>Sent: Tuesday, 6 April 2021, 15:52To: dotnet/docsCc: Peter; MentionSubject: Re: [dotnet/docs] Can C# 9.0 be used with .NET Core 3.1 ? And is it supported ? (#23643)
👋 Hi @pb-qs
C# 9 is not supported on .NET 3.1. You can configure it using the LangVersion element in your project file, but it is not supported.
Closing as an answered question.
—You are receiving this because you were mentioned.Reply to this email directly, view it on GitHub, or unsubscribe.
[
{
@.***": "http://schema.org",
@.***": "EmailMessage",
"potentialAction": {
@.***": "ViewAction",
"target": "https://github.com/dotnet/docs/issues/23643#issuecomment-814185136",
"url": "https://github.com/dotnet/docs/issues/23643#issuecomment-814185136",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
@.***": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]


Typo in step 11 of new Javascript Cert "Learn localStorage by Building a Todo App" challenge

Describe the Issue
Instructions text says "findIndex is an array method that lets find the index of the first element in an array that satisfies a given testing function."
Following the style of previous similar statements in the course, "lets find" should probably say "lets you find".
Affected Page
https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures-v8/learn-localstorage-by-building-a-todo-app/step-11
Your code

Expected behavior
"lets you find" instead of "lets find"
Screenshots
No response
System

Device: laptop
OS: Windows 11
Browser: Chrome
Version: 120

Additional context
No response

Hey @gduteaud !
That's a good catch.
But after reading through the directions there are a few things that could be cleaned up to simplify it a bit and there are a few things missing like the <dfn><dfn> markers to indicate a new term is being introduced.
Let's go with this revised description
# --description--

You will need to determine whether the task being added to the `taskData` array already exists or not. If the task does not exist, you will add it to the array. If it does exist, you will update it. To accomplish this, you can use the <dfn>findIndex()</dfn> method.

The `findIndex` array method finds and returns the index of the first element in an array that meets the criteria specified by a provided testing function. If no such element is found, the method returns `-1`.

Here's an example:

```js
const numbers = [3, 1, 5, 6];
const firstEvenNumIndex = numbers.findIndex((num) => num > 3);

console.log(firstEvenNumIndex); // prints index 2
```

Use `const` to declare a variable called `dataArrIndex` and assign it the value of `taskData.findIndex()`. For the `findIndex()` method, pass in an arrow function with `item` as the parameter.

Within the arrow function, check if the `id` property of `item` is strictly equal to the `id` property of `currentTask`.

I'll go ahead and open this up for contribution.


Error While trying to run the first example notebook

Getting this error when trying to run the first example notebook
Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)
Using a M1 MacBook Air

Hey, same issue as #85, closing to centralise investigation there!


Add support for more than just a .js version razzle.config.js file

🚀 Feature request
Current Behavior
I am using razzle with a full typescript application and I'd love to be able to have my razzle.config.js file also be in typescript
Desired Behavior
Rather than needing to write my razzle.config.js file in javascript, I'd love to use Typescript or, for the simple cases where one just wants to update options or use a plugin, a .json file
Suggested Solution
Have razzle look for any of razzle.config.js, razzle.config.ts or razzle.config.json when starting up

Who does this impact? Who is this for?
It impacts those of us who want a pure Typescript environment
Describe alternatives you've considered
I've tried using both a .ts and .json version, and in both cases, it seems like the options portion of the config aren't being respected even though it seems that the functional parts are, because my razzle.config.js has turned off the cache option, but when I switch the file to be razzle.config.ts, the cache directory begin generating again. Since we have implemented a custom plugin, that plugin seems to be executing in the places where the webpack config is updated. Or else, the original webpack 5 issues I had to deal with are no longer needing to be updated and my app really works (mostly) without my customizations.
Additional context

Ah... Yep it is the latter... I probably can remove my one-off customizations I originally added to get webpack 5 to work...


Mac Pro 2019 (memory usage?)

I have a Mac Pro 2019 28core Xeon with 256GB of RAM and i would like to install LlamaGPT on it. But now i see only the docker compose option for x86 cpu's. Does this mean that it is not going to use my memory?
I am sure the 28c/56t Xeon will do the job, but is there a way to get use of my memory of even my 6900XT?

Hello
Your CPU is compatible with the docker image. It should work fine and yes the container will use your RAM.
However, it won't use the GPU


Fix debug tag for Docker

Performance:

[x] I am very sure this PR could not affect performance.

(Closes https://github.com/tigerbeetledb/tigerbeetle/issues/592)

Thanks Fed!

Sure! Unfortunately with the current setup can't test if it works without a merge :grimacing:


Overleaf Template

Thanks a lot for your great job.
It will be great if you could have an overleaf template.
I tried to import it to overleaf but a lot of errors occurred.

I managed to use it with Overleaf, the main issue was the logo creation logic.
To make it work:

Downloading the logos.
Run sh crop_place_logos.sh
Upload to overleaf inc/ directory the files:

FAK.pdf
fak_placement.tex
TUM.pdf

I hope this helps


Add a tool to enumerate vulkan devices and add test runner flags for selecting

Right now the logic to select a Vulkan device for the test runners is too simplistic (it just takes the first). We should probably have two flags: a device name to match and an index. Also, it would be nice to have a tool to enumerate what the driver sees.

#3937 allows us to expose multiple Vulkan drivers (swiftshader/nvidia native/etc), and then the existing driver device enumeration should allow for selecting specific devices within those. Just need some flags in the runners.

This was added recently and --list_devices/--dump_devices (or the C APIs) can be used.


Feature Stepper Component

This pr introduces a stepper component that shows the specific point or step a user is at during the setup process of a federation.
The stepper was also made to work with the respective routes that guardians can take when a federation is being set up either as a Leader or as a Follower.
Please review @okjodom  @EthnTuttle
Pictorial representation of the stepper:

I left a couple nits related to naming and code conventions. But the experience is neat and informative to the users

progress component heavily uses colors and states. We should consider linking this to theme values
do our designs spec how the progress experience looks like in mobile? If not, please leave a note in the figma file
can you link to the figma file in description for reference

I left a couple nits related to naming and code conventions. But the experience is neat and informative to the users

progress component heavily uses colors and states. We should consider linking this to theme values
do our designs spec how the progress experience looks like in mobile? If not, please leave a note in the figma file
can you link to the figma file in description for reference

Will attend to all corrections and make fixes where necessary


fix(deps): update terraform-module

This PR contains the following updates:

Package
Type
Update
Change

terraform-ibm-modules/cbr/ibm (source)
module
minor
1.24.1 -> 1.27.0

terraform-ibm-modules/secrets-manager/ibm (source)
module
minor
1.17.13 -> 1.18.0

Release Notes

terraform-ibm-modules/terraform-ibm-cbr (terraform-ibm-modules/cbr/ibm)
v1.27.0
Compare Source
Features

Enable traffic flow from SCC to COS is added (#525) (789366a)

v1.26.0
Compare Source
Features

added support to the cbr-zone-module to use existing zone using new inputs existing_zone_id and use_existing_cbr_zone (#530) (3e25409)

v1.25.0
Compare Source
Features

updated the target_service_details input in the fscloud submodule to support setting the geography option.NOTE: Both region and geography cannot be set simultaneously for the container registry service. (#519) (4060786)

terraform-ibm-modules/terraform-ibm-secrets-manager (terraform-ibm-modules/secrets-manager/ibm)
v1.18.0
Compare Source
Features

do not create Event Notification related resources in the Deployable Architecture solution when an existing Secrets Manager instance is passed (#201) (9203610)

v1.17.15
Compare Source
Bug Fixes

add count around time sleeps to make module more efficient (#200) (dbc6468)

v1.17.14
Compare Source
Bug Fixes

add fix to prevent timing issue around KMS auth policy (#199) (2c88fdb)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

/run pipeline

/run pipeline

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

GitHub release
v1.19.11

Your semantic-release bot :package::rocket:


Improve error message when initial memory size > maximum

Had a bug in my wast and it had  (memory 1 0 (segment ... and the error message was a the following
(5:5): initial memory size must be <= maximum memory size (S-expression node is (segment...)
The patch changes it to the following:
(5:5): initial memory size '1' must be <= maximum specified memory size '0' (S-expression node is (segment...)
But more generally what is your thoughts on diagnostics?

Should error messages include the values such as with this change?
not sure if it is a bug or not, but should it output 'segment' or '0' for the S-expression?
should recordError output the source or is describeSNode support to do that?
should the file name be included?

Matching more of what clangs diagnostics you would end up with something like the following:
test.wast:5:5: error: initial memory size '1' must be <= maximum specified memory size '0'  (S-expression node is 0)
(memory 1 0
^

Should error messages include the values such as with this change?

Yes, I think so.

not sure if it is a bug or not, but should it output 'segment' or '0' for the S-expression?

The S-expression output is meant more for debugging parsing rather than diagnosing errors in the WAST. However, the node that it outputs is also where it gets the error location from, so in this case it should probably be pointing to the memory node.

should recordError output the source or is describeSNode support to do that?

If you mean printing the surrounding source text to contextualize the error, then I think it would be best to do that in recordError.

should the file name be included?

Yes, but it should be printed by loadTextModule in CLI.h (it does not currently do this).

test.wast:5:5: error: initial memory size '1' must be <= maximum specified memory size '0' (S-expression node is 0)
(memory 1 0
^

Yes, although it's not necessary to output the S-expression at the error location if you're outputing the location and source line:

test.wast:5:5: error: initial memory size '1' must be <= maximum specified memory size '0'
(memory 1 0
^


Installation script overwrites the global config file

The installation script overwrites the salomon.cfg config file with the default one.

In case the config file already exists inside the target directory it remains untouched.

In case the config file already exists inside the target directory it remains untouched.

Fixed in version 1.18.2.

Fixed in version 1.18.2.