Codable

TODO
Look for all differences with codable and list them.
Codable

1 parsing fails all fails
Fine grained error handling
Need 1 custom parsing need to write all encodable method
Default parsing matching existing keys
No type inference (apart from dates)
Yields a new object
Quite verbose

Arrow

Best effort parsing, ignoring fails
No error handling (seldom used when getting data from a webservice)
No default parsing
Type inference out of the box (sy string identifier to an int for example)
Can parse and fill an existing object
Custom date parsing on a case per case basis
Very concise syntax

Having compared Arrow with Codable in a big iOS App, I still believe there's an advantage using Arrow.
@maxkonovalov I would love to know your feelings on Codable vs Arrow :)

Hey @s4cha!
Arrow has a big advantage when your project is based on the Arrow+then+ws combo :)
I haven't given a try to Codable yet, but definitely will do.
The best way to compare the two would be seeing side-by-side code listings from some real project.

@maxkonovalov agreed! I've started trying Codable out but as much as I want to use the native solution I still prefer Arrow somehow. I must not be very objective though :)
Your answer brings me to something cool that we can do, support Codable on ws!
At first sight it would kinda look like duplicating whatever we have for ArrowParsable with Codable.
I guess it would make ws more attractive for users, since they would not have to use Arrow if they don't want to :)

@s4cha I believe if ws supported Codable, then it could be very powerful
I have not used Codable but at first look it seems like it is both wonderful when it works, and horrible when it doesn't.
I do a lot of debugging networking calls (real life = bad documentation) and Arrow looks a lot better than Codable for that.

@n13 This is a very late answer, but this has been done in Networking the ws successor :)


Cancel in-progress checkpoints when thread is shutdown

This fixes a bug when the checkpoint thread is shutdown, but there was a checkpoint in progress. Sometimes, the shutdown request can occur after the checkpoint output stream is created, but before anything is written to it. So, checkpoint stream is closed, which makes the checkpoint complete, but empty (which is incorrect).
This PR fixes the issue by canceling the stream when the thread is shutdown, instead of closing it. By canceling the stream, the checkpoint is not considered complete, but is removed. Therefore, the potentially empty file is not considered a valid checkpoint, and that file is removed.
Unfortunately, this is difficult to unittest because it depends heavily on timing. However, I ran a flaky test 500 times, and before this change it failed 14 / 500 times. With this change, it failed 0 / 500 times.

LGTM

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/11071/
Test FAILed.

alluxio-bot, test this please.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/11074/
Test PASSed.

alluxio-bot, merge this please

alluxio-bot, cherry-pick this to branch-2.3 please

alluxio-bot, cherry-pick this to branch-2.2 please

alluxio-bot, cherry-pick this to branch-2.1 please

alluxio-bot, cherry-pick this to branch-2.0 please


[Smartphone] "Search" for particular sections don't response

Preconditions:

smartphone 4,7'

In the whole application there is a problem with the search engine for particular sections:
Sample:

@dawid-g fixed, but @drunkerbull should fix zero data effect for mobile view

confirmed.


Remove .NET 5.0 preview manifest

This reverts the manifest added with https://github.com/microsoft/winget-pkgs/pull/891.  The reason for removing this is because it is the latest version therefore it is the version which gets installed when you do not specify a version number when installing the .NET Core package.  Installing a preview should not be the default experience.  Until there is a channels concept, .NET preview packages should not be created.
cc @richlander
Microsoft Reviewers: Open in CodeFlow

Can someone please help get this merged in to improve the UX?  cc @KevinLaMS, @denelon


hide drawings if the user removed them in presentation

Currently if a user undo a drawing it his not removed in the video. This PR fixes that issue.

Thanks a lot for this enhancement!


Add pagination support for App Runner ListServices

Describe the bug
https://docs.aws.amazon.com/apprunner/latest/api/API_ListServices.html describes the ListServices action as supporting pagination in the standard fashion (with MaxResults and NextToken), but the SDK and AWS CLI do not paginate the results.
Expected Behavior
aws apprunner list-services returns all services
Current Behavior
The action returns no results, and a pagination token.
$ aws apprunner list-services
{
    "ServiceSummaryList": [],
    "NextToken": "<a long token string>"
}

Reproduction Steps

Create a lot of App Runner services
Run aws apprunner list-services
Observe that not all services are returned.

For the specific behaviour I reported, insert:

Delete a lot of App Runner services, leaving older ones

Possible Solution
Please see #3115 as a possible solution, though I understand these files have to be provided from the upstream service.
Additional Information/Context
This is affecting users of the AWS CLI, see aws/aws-cli#8124.
SDK version used
not sure, using AWS CLI 2.15.17
Environment details (OS name and version, etc.)
macOS 14.3

Hey @dgholz, thanks for reaching out.  I'm going to close this in favor of the tracking issue (https://github.com/aws/aws-sdk/issues/704) opened in response to your pull request.  Please refer to that issue for any updates.


How to reference whole codebase files as context?

I see there is options for referencing file selection and folder selection but i couldn't find referencing all folders (codebase). Is there such option for it?

codebase


Big update

Me and @ChenghaoMou got in a video call to fix some bigger issues based on the big report that I ran.
The .rm files I added are for some checkboxes and bullets, as well as for the shader tool.

The Nix flake is a super nice development environment. I'll quickly describe what it is about. Flakes are based on Nix. Nix is a package manager that runs on Linux, MacOS, Windows WSL that basically just automatically cross-compiles everything and just kinda installs what you ask it to install in a 100% reproducible way.
 Exit the shell? And it's as if those programs never were on your system in the first place. Magic.
No virtualization, cross-platform, deterministic, and cryptographically secured. It's fantastic :D

The most common remaining issues after this PR is merged is that version 5 files and version 3 files are not supported.

I was thinking, but that is more for Scrybble than necessarily for rmc... Perhaps if we find encounter a file that isn't v6, I just make a PDF that says "Hi. This page cannot be synced because it's too old :(! If you need this page, please open the page on your remarkable, add one stroke and the file should work the next time."

Nicely done ! I wanted to check the data in #23 and also investigate strokes/texts/templates alignment/sizes, but I don't know yet when I will have time to do that.
For unsupported pages, what I've done in my small software to convert rm notebooks is, for each page, to search for the version of the rm page and not export non-v6 pages (in fact, I don't export notebooks containing a non-v6 page, but that's not great, and it is not complicated to export a “whoops” page instead).

Nicely done ! I wanted to check the data in #23 and also investigate strokes/texts/templates alignment/sizes, but I don't know yet when I will have time to do that.
For unsupported pages, what I've done in my small software to convert rm notebooks is, for each page, to search for the version of the rm page and not export non-v6 pages (in fact, I don't export notebooks containing a non-v6 page, but that's not great, and it shouldn't be hard to export a “whoops” page instead).

I got a more updated report. I'll add it to my dropbox now.


[New game]: Capitals Of The World

🎮 Game Request
Capitals Of The World, is an educational yet fun game. The flag and the country's name will be provided and the player needs to correctly guess the capital of the country.
Point down the features
Game points:
Players are presented with a country's flag and name.
Players must type the capital city of the given country.
Immediate feedback is given: correct or incorrect.
Scores are tallied based on correct answers.
Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @nadarmega !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

/assign


mask positions based on DP

This PR adds an additional masking based of the depth (DP) of coverage in the VCF file.

Looks good, I will update configs and use functionality in separate branch.


Not bug, not a feature, Just need help to make FlowCharting compatible with zabbix datasource

Hi Alexander,
My name is Arnaud, i am the author of plugin Flowcharting for grafana.
Some user of flowcharting and Zabbix plugin have the problem with identical same name for metrics.
https://github.com/algenty/grafana-flowcharting/issues/106
But i don't know zabbix, do you know a free online server zabbix to add a zabbix datasource and debug Flowcharting ?
I tried http://zabbix.grafana-zabbix.org/api_jsonrpc.php without success.
I see in doc the user API in screenshot but i don't know password.
Thx for you help
BR
Arnaud

Hi! Try to use my bootstraped docker env (I use the same for play.grafana-zabbix.org)
https://github.com/alexanderzobnin/grafana-zabbix-demo-docker


add netv2 default hardware design

Fixes #46

Failure in tests is related to yosys version.
We have to wait for yosys update in conda packages -> SymbiFlow/yosys/pull/74

@wtatarski - We should resurrect this pull request and get it merged.


macOS Support

Hi, Everyone
I built this project on macOS 10.15 after I disabled the things related to the Windows Interop.
The building and running are good but the vertical alignment of the text in all the controls is strange.

Does not the styling of this support on macOS?
Or how to fix it?
Thank!

So, it's an issue with taking the Fluent theme and making it cross-platform. Microsoft designs the controls specifically for using the Segoe UI or Segoe UI Variable font which isn't available except on Windows (unless you install yourself). Many of the controls position text top/left and then use Margins to make them appear centered - which when Segoe UI isn't the font, becomes a huge issue, as you pointed out. I can't ship this library with those fonts for licensing reasons, and would really rather not ship a full font either.
I'm still trying to figure out the best solution, and I may end up just removing the margins and setting VerticalAlignment to Center to try and avoid these issues. It breaks with the Fluent theme, but it might just be the x-plat way to handle this...

Note that the top/left margins for positioning in WinUI are done for multi-line text. This allows the actual checkbox, for example, to appear next to the first line instead of centered between two (which looks worse).
There is no general-purpose way to "center with first line of text" in any XAML frameworks. Therefore vertical centering is probably the best that can be done right now. Some advanced TextFormatting measurements would otherwise have to be supported in XAML.

I had a better idea on how to fix this without loosing functionality.
Create two resources for TopLeftMargin and VerticalAlignment. These would be shared and used in the radiobutton and checkbox, etc. They would provide the positioning info to center within the first line of text using a margin. Or, just change the vertical alignment to center.


imageWithBlocks fix. Rotate the original image to the right or it sho…

…ws upside down.
It used to look like this for me.

As you can see the boxes are at the right place. It is the image that is upside down. Unless I say "threshold" is true, then it is fine.

So it seems that something was wrong with "self.image" orientation. After the change I made:

Per @ws233 comment on another pull request

The issue is that nevermind of the orientation of the device, the pixels in the image are always located in the same order. Only the imageOriantation tells how to draw the image on the screen.
imageWithBlocks doesn't consider the imageOriantation property of the image.
So you'd better fix the drawing code there.
In the case of the thresholding, the image is preprocessed for you automatically. And if I remember correctly, the preprocessing considers the imageRotation. Therefore you have a correct result after the preprocessing.

So I guess instead of blindly rotate, I need to check imageOriantation property.


Support builder signing

Changes

Implement builder signing with cosign.

This is still a work in progress.
Fixes #942

Closing this in favour of #1208.


do not return nil assets in Source#assets

This ensures that Source#assets does not return any nil values.  nil values may occur if someone deletes an asset (an Image, Document, Video, or Audio) without deleting its association to a Source, as expressed in the attachments table.  There are validations in place to dependent-destroy these associations, but this in an extra precaution that will catch any mistakes that have occurred or could occur in the future.
This addresses task #8167.

This looks fine, but can you remind me of what &:asset is in the context of #assets?
I'm not able to look at it and recall where the definition of this proc (?) is or what kind of values it returns.
Is this the normal way that Rails lets you work with many-to-many joins, or left joins?
I'm assuming there' some Rails "magic" that is not obvious to me.

Sure.  The attachments table has three columns, source_id, asset_id, and asset_type.  The asset_id refers to a Video, Image, Document, or Audio, and  asset_type holds the class name of the asset.  So &:asset is going to return an instance of Video, Image, Document, or Audio.  If the value for asset_id doesn't match up with any records that are saved in the database, it will return nil.  Let me know if that doesn't answer your question.

I think I understand, and it seems that I'm taking this out of the scope of the PR, but I'm just wanted to make sure it's not something that needs documentation.  Is that Rails magic for a column that ends with _id?  My concern in looking at it is just that, though I can tell it's rejecting nil values I have no understanding of where this thing asset comes from or what values it's supposed to return -- but that's just my general gripe about Rails in general.

@markbreedlove yes, it is Rails magic, based entirely on the naming conventions.

OK, thanks, @AudreyAltman.  I'll merge this.


api: Implement GET /messages/<message_id>/history.

Testing plan: lint and mypy checks passed locally.

@YagoGG: Merged, thanks! :) Also, let's have a conversation on chat.zulip.org about when we should make a new PyPI release. I think it might be time for another one, there's been a lot of activity in this area! :) Thanks for working on this!


Exception with machinename target on asp.net core

Hi,
${machinename} not supported in asp.net core.
Type:

Bug

NLog version: 4.4.0-beta4
Platform: asp.net core (moniker dotnet5.4)
Current NLog config (xml or C#, if relevant)
        public static LoggingConfiguration CreateConfiguration(IFileLogConfiguration configuration)
        {
            var config = new LoggingConfiguration();
            var target = new FileTarget
            {
                FileName = configuration.FileName, Encoding = Encoding.UTF8, Layout = string.Join(LogSeparator, Columns)
            };
            var rule = new LoggingRule("*", NLog.LogLevel.Trace, target);

            config.AddTarget("file", target);
            config.LoggingRules.Add(rule);

            return config;
        }

        private static IEnumerable<string> Columns
        {
            get
            {
                yield return "${level}";
                yield return "${longdate}";
                yield return "${exception:format=Type}";
                yield return "${exception:format=Method}";
                //yield return "${asp-request:serverVariable=HTTP_METHOD}"; // Server variables aren't supported in DNX
                yield return "${machinename}";
                yield return "${document-uri}";
                yield return "${identity:name}";
                yield return "${message}";
            }
        }

In case of a BUG:

What is the current result? ArgumentException
What is the expected result? Current machine name
Did you checked the Internal log? Well, application throws exception at startup...
Please post full exception details (message, stacktrace, inner exceptions)
System.ArgumentException was unhandled by user code
HResult=-2147024809
Message=LayoutRenderer cannot be found: 'machinename'
Source=NLog
StackTrace:
at NLog.Config.Factory`2.CreateInstance(String name)
at NLog.Layouts.LayoutParser.ParseLayoutRenderer(ConfigurationItemFactory configurationItemFactory, SimpleStringReader sr)
at NLog.Layouts.LayoutParser.CompileLayout(ConfigurationItemFactory configurationItemFactory, SimpleStringReader sr, Boolean isNested, String& text)
at NLog.Layouts.SimpleLayout.set_Text(String value)
at NLog.Layouts.SimpleLayout..ctor(String txt, ConfigurationItemFactory configurationItemFactory)
at NLog.Layouts.Layout.FromString(String layoutText, ConfigurationItemFactory configurationItemFactory)
at NLog.Layouts.Layout.FromString(String layoutText)
at NLog.Layouts.Layout.op_Implicit(String text)
at ServiceHub.Logger.LoggerConfigurator.CreateConfiguration(IFileLogConfiguration configuration) in C:\Logger\Logger\src\Logger\LoggerConfigurator.cs:line 18
at ServiceHub.Logger.Logger..ctor(IFileLogConfiguration configuration) in C:\Logger\Logger\src\Logger\Logger.cs:line 17
at ServiceHub.Logger.Provider.NLogProvider.CreateLogger(String name) in C:\Logger\Logger\src\Logger\Provider\NLogProvider.cs:line 29
at Microsoft.Extensions.Logging.Logger.AddProvider(ILoggerProvider provider)
at Microsoft.Extensions.Logging.LoggerFactory.AddProvider(ILoggerProvider provider)
at ServiceHub.Logger.Extensions.LoggerFactoryExtensions.AddServiceHubLogger(ILoggerFactory factory, IFileLogConfiguration configuration) in C:\Logger\Logger\src\Logger\Extensions\LoggerFactoryExtensions.cs:line 11
at ServiceHub.Logger.Sample.Startup.Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) in C:\Logger\Logger\src\Logger.Sample\Startup.cs:line 38
InnerException:
Are there any work arrounds? yes/no no
Is there a version in which it did worked? I don't know
Can you help us by writing an unit test? yes

Not sure if this is a bug, but we do need to fix some docs for coreclr support

Thank you for quick response; to be honest I'm not sure, what you mean as "we do need to fix some docs for coreclr support"..?
However, I wrote our target renderer, but I'll ask my employee to permission send pull request, where I fixed machine name for .net core RC1...

This is fixed in netstandard 1.5, See https://github.com/NLog/NLog/pull/1526


[Feature] Enhanced upgrades tailored for MariaDB reliability.

Describe the solution you'd like
We should implement a custom, reliable, MariaDB state aware upgrade mechanism:

Restart replicas and then master
Restart one Pod at a time making sure it is in sync.
Block major upgrades: 10.x -> 11.x

Describe alternatives you've considered
Use default StatefulSet rolling upgrade strategies, but it doesn't take into account the MariaDB state, which means that a master node could potentially be upgraded first, and therefore also disrupted.
Additional context
This will unblock spec.myCnf updates:

https://github.com/mariadb-operator/mariadb-operator/issues/320

Doesn't use K8s stateful set construct.
Also implies feature flagging "upgradable" as a pod level attribute, so you can opt replicas/masters in/out of the upgrade path.
Enables TLS: https://github.com/mariadb-operator/mariadb-operator/issues/137
Reminder:  In Galera, all nodes are masters / all writable.  In async replication, replicas cannot receive writes so they need a different upgrade path.


Bug fix: Update schema.py

Fix code by replacing list with List line 26.

This is great man, curious how do you test the graphql part locally, which graphql client are you using?

@Kalebu I didn't test it locally actually, I fixed the error displayed here in PR comment

This is great man, curious how do you test the graphql part locally, which graphql client are you using?

I'm still abit new but I use graphene for the API and Flask_GraphQL for testing, it creates a playground(in a defined url) like the one made by Node.js' GraphQL clients.


Clobber ssh environment regardless of setopt

To prevent
_plugin__start_agent:7: file exists: $HOME/.ssh/environment-$HOST
starting ssh-agent...
Could not open a connection to your authentication agent.

:+1:


[SPARK-27215][CORE] Correct the kryo configurations

What changes were proposed in this pull request?
val KRYO_USE_UNSAFE = ConfigBuilder("spark.kyro.unsafe")
    .booleanConf
    .createWithDefault(false)

  val KRYO_USE_POOL = ConfigBuilder("spark.kyro.pool")
    .booleanConf
    .createWithDefault(true)

kyro should be kryo
How was this patch tested?
no need

@vanzin @squito @gatorsmile, could you have a time to review this?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Test build #4642 has started for PR 24156 at commit 616c8ce.

Can one of the admins verify this patch?

Does this change means the previous config key will no longer be recognized?

Does this change means the previous config key will no longer be recognized?

The "previous" config key never existed, it was a typo in a recent change.

Does this change means the previous config key will no longer be recognized?

The "previous" config key never existed, it was a typo in a recent change.

Thanks, sounds good!

cc @HeartSaVioR

Test build #4642 has finished for PR 24156 at commit 616c8ce.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merging to master.


You can not use parameter $connection in migrations

Laravel Version: 5.5.18
PHP Version: 7.2
Database Driver & Version: MySQL 5.7

Description:
I'm using code:
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class ModifyProductColumn extends Migration
{
    protected $connection = 'my_connection_2';
    protected $table = 'products';

    public function up()
    {
        Schema::table($this->table, function(Blueprint $table) {
            $table->dropColumn('user_id');
        });
    }

    public function down()
    {
        Schema::table($this->table, function(Blueprint $table) {
            $table->integer('user_id')->after('id');
        });
    }
}

When I execute php artisan migrate command in the console, I get an error:
[Illuminate\Database\QueryException]
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'my_connection_1.products' doesn't exist (SQL: alter table `products` drop `user_id`)

[Doctrine\DBAL\Driver\PDOException]
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'my_connection_1.products' doesn't exist

[PDOException]
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'my_connection_1.products' doesn't exist

For the query to work in the required database, you need to modify the code:
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class ModifyProductColumn extends Migration
{
    protected $connection = 'my_connection_2';
    protected $table = 'products';

    public function up()
    {
        Schema::connection($this->connection)->table($this->table, function(Blueprint $table) {
            $table->dropColumn('user_id');
        });
    }

    public function down()
    {
        Schema::connection($this->connection)->table($this->table, function(Blueprint $table) {
            $table->integer('user_id')->after('id');
        });
    }
}

It seems to me that the $connection parameter should be automatically picked up?
Or am I wrong?

As per the docs yes you need to explicitly set the connection you want to use for every Schema call, the connection class property is used for databases that allow running a migration inside a transaction, it allows setting which connection will be used for the transaction, it's also used when you pretend running a migration to get what sql queries will run.


ELK - No mapping found

I'm trying to use ELK as storage.
I've created the index:
PUT eventstore
{
 "settings" : {
   "index" : {
     "number_of_shards" : 2,
     "number_of_replicas" : 1
    }
  }
}

But now I got the follow error:

eventstore:store:elasticsearch No mapping found for [commitStamp] in order to sort on

How can I configure ELK?
Ca you update the documentation?
thaks

@gerbenmeyer can you help?

I am facing same issue. Had to create the index because initially on startup it complained index eventstore doesn't exist. So if you create index we end up getting this error. It could be because of new version of Elasticsearch and the way it changed behaviour. I was using 7.0.1 in docker.

Just my two cents, by looking at the driver it seems to be written for older versions of Elasticsearch ( i would say 2.x ) so even if you overcome this issue more issues are to be expected ( usage of types for example ).
May I ask what is the motivation behind using elasticsearch as eventstore?

@nanov you are right. It could break because now ES doesn't support type field in index.  For me personally, was trying out options other than Redis to try and test locally with different eventstore. Less relevant to issue but to your question:
Which other from supported eventstore you recommend as good for event storage? I mean is it DynamoDB or Redis e.t.c

I'm facing the same issue (using 7.0.1 in docker)
eventstore:store:elasticsearch no such index [eventstore] +0ms

I had to manually create an index. But then I got this error:
eventstore:store:elasticsearch No mapping found for [revision] in order to sort on +0ms
eventstore:store:elasticsearch No mapping found for [commitStamp] in order to sort on +9ms

Just my two cents, by looking at the driver it seems to be written for older versions of Elasticsearch ( i would say 2.x ) so even if you overcome this issue more issues are to be expected ( usage of types for example ).
May I ask what is the motivation behind using elasticsearch as eventstore?

@nanov Currently I use DynamoDB as event store. I'm wondering if there might be issues related to events replay. Since the DynamoDB is key/value database how do you solve the replay of all events?

@bikerp I'm not sure about the DynamoDB implementation, maybe @developmentalmadness has some insights.
As of the Elasticsearch implementation, theres some work that needs to be done in order to make it compatible with elasticsearch 7.X ( or 6.X for that matter ). I'm not sure it is worth looking into it, as, in my opinion, elasticsearch is totally not suitable to serve as an eventstore.

@nanov Thanks for the reply. Could you be more specific why elasticsearch is not suitable as eventstore?

Well elasticsearch isn't exactly a database, it has some issues with error handling and it isn't recommended as a main database in any use case. When indexing new documents ( ie writing ), they aren't available for search instantly ( unless you use the wait_for flag, which makes writes slow ) and generally it is designed for other purposes ( well, full-text search ).
Having that said, having your eventstore in something more reliable and suitable ( as in eventsourcing this is the only source of truth ) and readmodels in elasticsearch is a totally valid use case.

@nanov Thanks for the explanation.

Haven't worked on it in a couple years but I don't think DynamoDB has snapshots implemented. That would be a major drawback unless your model had limited lifetime as ours did when I implemented it.

Should have checked first before I replied... Looks like snapshots are implemented but our usage didn't need snapshots. Dynamo should be able to handle the usage pattern but I left the company using this 8 months after we put it into production so I don't have much long term insights into any issues with it


[BUG]: Credit card form magnifies and becomes unusable on Chrome 99.X on Android

Is there an existing issue for this?

[X] I have searched the existing issues.

🐞 Describe the Bug
The Fields within the Debit or Credit Card form magnifies and becomes un-fillable
https://user-images.githubusercontent.com/99205307/159497211-f0ce7b50-0ac4-4482-8a20-0a7f532a3b80.mp4
😕 Current Behavior
The screen gets magnified and the form is not usable.
🤔 Expected Behavior
The screen stays in normal size for users to be able to fill in the information.
🔬 Minimal Reproduction
1. Navigate to https://cnulkl.csb.app/ on Android with Chrome 99.X
2. Hit Debit & Credit card
3. Start filling in the fields with the required information

🌍 Environment
| Software         | Version(s) |
| ---------------- | ---------- |
| react-paypal-js  |   7.6.0    |
| Browser          | Chrome 99.0.4844.58|
| Operating System |  Android   |

Relevant log output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

➕ Anything else?
Paypal-react-js-sandbox
PageLink

Hi @saransh88 i tested the issue on sandbox link provided so for the issue raised above can be fixable with user-scalable=no in the meta tag

https://6r2w8n.csb.app/

@mpreddy928 Thank you for getting back.
I tried using https://x4e05k.csb.app/ on my Device and this is what I see.
Device: Pixel 4a
Browser: Chrome-100.X
Android Version: 12.X
https://user-images.githubusercontent.com/99205307/161340964-d0d557a7-14a8-40f6-bfa7-5cfb2c329746.mp4

@saransh88 i will check this and let you know asap. Thanks

@mpreddy928 Most Android device with
Android 10 +
Chrome on Mobile: 99.X+
Devices tried:
Samsung Galaxy 9
Samsung S10+
Pixel 4a 5G

Yes, It's fixed !
Thank you :-)


Ank faq 10th july

Added 14 FAQs

 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.

lgtm for feature flags. tests have failed though so worth rechecking.

@ank1064 Closing this PR, please separate CD FAQs into their respective swimlanes and add it to their swimlane specific FAQ docs page.
If you seperate out CD, FF FAQs are approved, should be able to get them merged.


Rule criteria needs more regex operators

Need support for a case-insensitive imatchregex operator.
Additionally, the matchregex operator searches from the start of a string.  So support for re.search is also necessary.  I propose adding searchregex and isearchregex operators too.

Here's the PR:  https://github.com/StackStorm/st2/pull/2558

Merged, Thanks!

Thank you :)


Use of embedded_hal_0_2 to obtain required I2c traits for I2cDriver

Please refer to https://github.com/esp-rs/esp-idf-hal/blob/master/src/i2c.rs#L314-L388. I found that I would get such errors when using shared-bus with I2cDriver
151 |     i2c_proxy1.write();
    |                ^^^^^ method not found in `I2cProxy<'_, NullMutex<I2cDriver<'static>>>`
    |
   ::: /home/mdesilva/.cargo/registry/src/github.com-1ecc6299db9ec823/embedded-hal-0.2.7/src/blocking/i2c.rs:165:8
    |
165 |     fn write(&mut self, address: A, bytes: &[u8]) -> Result<(), Self::Error>;
    |        ----- the method is available for `I2cProxy<'_, NullMutex<I2cDriver<'static>>>` here
    |
    = help: items from traits can only be used if the trait is in scope
help: the following trait is implemented but not in scope; perhaps add a `use` for it:
    |
4   | use embedded_hal::blocking::i2c::Write;

By digging through the source I found use of embedded_hal_0_2.  To fix this I had to add add use embedded_hal_0_2::prelude::*; and include embedded-hal-0-2 = { package = "embedded-hal", version = "0.2.7", features = ["unproven"] } into my Cargo TOML.
With the upcoming release of new crates, I think we should fully say goodbye to the older version of embedded_hal and just move those traits into the new version.  Thoughts?

I hope the explanations in the Matrix channel has clarified the situation a bit. Again: I don't think the fact that esp-idf-hal implements the traits from both hals (e-hal 1.0-aphpa9 and e-hal 0.2) is bad. Quite the opposite - it enables extra flexibility.
By the way, the shared-bus crate does the same. It is only that they did not update their e-hal 1.0 dep from -alpha8 to -alpha9, possibly because they got tired tracking the alpha releases and hope e-hal 1.0 release is imminent. Which of course means that shared-bus and esp-idf-hal are currently NOT compatible w.r.t. e-hal 1.0 (as -alpha releases are not compatible with each other). But they are still compatible via e-hal 0.2, which is not your problem and in fact is saving you. Your problem is the alpha incompatibility.


Take into account arenas and battlegrounds ?

Hi,
Is it intended that there is no killpoints for bg and arenas ?

I don't know which api endpoint has those numbers

Looks like the statistics api has this data ( category "id": 21, "name": "Player vs. Player"), but only as totals, which would be inaccurate for characters that have won bgs/arenas before legion.

There is a /pvp endpoint as well but that's weekly

Closing this, i will add this if the API will expose this kind of stuff.


Keymap config

Currently I put this at the end of my lsp lua config file:
-- go plugin
require('go').setup()
require("go.format").gofmt()
require("go.format").goimport()
vim.cmd("autocmd BufWritePre *.go :silent! lua require('go.format').gofmt()")
vim.cmd("autocmd BufWritePre (InsertLeave?) <buffer> lua vim.lsp.buf.formatting_sync(nil,500)")

Which results in the following error:

Also, is the way I have set it up here right?

 Gtn :TestNearest -v -tags=integration")
  vim.cmd("au FileType go command! Gts :TestSuite -v -tags=integration")
  vim.cmd("augroup END")

The plugin does not have any keymappings defined by default. I do not think the keymaps issue was caused by go.nvim .

Ahh thanks !

@ray-x I am having some issues with :Gofmt however, if I run it inside nvim it always prints out installing gofumpt, but never actually does anything. If I run go fmt file.go directly it does format properly


set-output (used in "Extract branch name" CI step) is deprecated

We're currently getting this warning during the "Extract branch name" step of the CI

Warning: The set-output command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more  information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

PR: (DARFT) https://github.com/openedx/paragon/pull/2807


Add all M1 datasets to the database

Per the August 3 data portal call, the all-hands script will be reused to populate the database for M1 rather than blocking on the REST API(s).

Is this depended on the deployment of corpora prod.
Where will these dataset be visible from, prod, dev, staging?

This is talking about loading everything into prod I believe. So yeah would depend on corpora prod to finish it.

In order for the cellxgene link to be launchable from the portal, we need to update the script to add the cellxgene link to the database. For each dataset, this can be done by creating a DeploymentDirectory ORM object, populating it with the dataset ID and cellxgene link, and marking the environment as PROD to indicate that this is publicly launchable cellxgene link.

@mckinsel does it make sense to tackle chanzuckerberg/single-cell#24 while writing the remix script?

The 18 remixable M1 datasets are in the prod database, showing up in the API, and visible on cellxgene.cziscience.com.


feat: Expiration for shortlinks

Ability to set expiration date for each shortlink.

cron for deleting expired shortlinks
UI for selecting/modifying expiration date
ability to choose a specific time as expiration date
expiration date defaults to never

496c6219713edcda4fd606b7ea4b4ded3f56506c
063c3210801acadcd27fb191a6955e3cd2ffa22b
89ed26df5e5c7bad40f09a7d0b0ff6a9a5778e11


feat: Added SimpleClient Implementation

Simple Client is there to provide ab abstraction layer on top of Cloud Spanner Client.
This is a simplified approach in order to make customers avoid common mistakes which result from specific Cloud Spanner idioms.

We're not prioritizing this work right now so closing this PR.


Fix SubViewport physics picking

Apply the logic of handle_input_locally for physics picking.
resolve #84258
cherry-pick of #85665 from 4.2 to master.
I see this as an interim solution until #77926 gets reviewed.
I believe, that it is unlikely that #77926 gets reviews anytime soon, but since #84258 is quite nasty, I want to provide a bugfix-PR, that is easier to review and that already received some testing in 4.2.

Thanks!


add a comprehensive capture print in greenberry/utils.py

currently here, we are having two capture_print functions, write a function that handles functions with parameters (including many args as well as optional args) and no parameters. hint: might use flags / optional args

I would like to work on this can you tell me a bit more.


Fix removing wrong file, therefore the last file could not match condition

showFiletypeIcon: true not working properly

Thanks!


Add some projects to Razor.Slim.slnf

Fixes https://github.com/dotnet/razor/issues/8186 (hopefully)
These weren't in the Razor.Slim.slnf before https://github.com/dotnet/razor/pull/7909, but maybe they were pulled in transitively by the "unnecessary" test projects I removed. Lets see if CI is happy.

@MichaelSimons does this look right? I'm not sure what I'm looking for, but they 3 projects you listed arent in the prebuild-usage.xml file for the linux release build from this PR. Is there another way to validate?

@davidwengier, thanks for fixing this.  They won't appear as prebuilts in this repo because nothing is referencing them, rather it is the sdk repo that references them so that is where they get reported as prebuilts.  I opened an installer PR with this fix to validate the e2e.  I'll report back when CI finishes.

Okay, looks like as of #8019 that project won't build in source build, so will see if changing that fixes things.

@chsienki for review


Correcting the tamil words

Corrected few tamil words to reflect correct actions. Example in the existing translation for upload
பதிவேற்ற - means to upload
பதிவேற்று - this means the correct action

Thanks @sivaganesh1988 for making this PR! This is now merged to master. In addition I added a version bump, so users can run tagui update from the command line or the Update TagUI button from MS Office plug-ins to make this available.
CC @ruthtxh on updated Tamil language dictionary from @sivaganesh1988 =)

(just added the version bump and ready for use)


Change from ls to stat, fix permissions

Issue #31.
Change most test from ls to stat. Also change permission checks.

LGTM.
Ran checkbashisms, seems to checkout.
We should add on the Contributing instructions for people to run checkbashisms or the shellcheck to make sure they are contributing POSIX.


Incorrect get_possible_reg_values behaviour for const ptr

Binary Ninja Version: 1.1.1002-dev, 512e984a
Platform: Windows 10
When dealing with a const ptr get_possible_reg_values returns <undetermined>. This doesn't happen if the display type of the pointer is changed to anything else (e.g. unsigned hex).

Fixed in build 1.1.1003-dev.


Error downloading zlib 1.2.8 in TensorFlow r0.10

While building TensorFlow r0.10, we faced below error:
zlib_archive: Error downloading http://zlib.net/zlib-1.2.8.tar.gz
It looks like the issue has been fixed in r0.12 through commit.
Will it be possible to include same change for r0.10?

Oh my goodness. It looks like I should just cherry pick https://github.com/tensorflow/tensorflow/commit/96e3e6f70ad9c441be46fcf70449e810a4b36896 on all the branches.

You're going to be so happy to hear that this is never going to happen again in the future, thanks to the incredible improvements we made to the Bazel downloader. Policy now dictates we have redundant mirrors for everything. It's going to do wonders for preserving the archival integrity of this software. https://github.com/bazelbuild/bazel/commit/ed7ced0018dc5c5ebd6fc8afc7158037ac1df00d

It looks like redundant mirrors are needed for nasm:
ERROR: /home/tom/.cache/bazel/_bazel_tom/0eaf2b6b7a8618527eb96256b130e46f/external/jpeg/BUILD:162:1: no such package '@nasm//': Error downloading [http://www.nasm.us/pub/nasm/releasebuilds/2.12.02/nasm-2.12.02.tar.bz2] to /home/tom/.cache/bazel/_bazel_tom/0eaf2b6b7a8618527eb96256b130e46f/external/nasm/nasm-2.12.02.tar.bz2: Connection refused (Connection refused) and referenced by '@jpeg//:simd_x86_64_assemblage23'.
ERROR: /home/tom/.cache/bazel/_bazel_tom/0eaf2b6b7a8618527eb96256b130e46f/external/jpeg/BUILD:162:1: no such package '@nasm//': Error downloading [http://www.nasm.us/pub/nasm/releasebuilds/2.12.02/nasm-2.12.02.tar.bz2] to /home/tom/.cache/bazel/_bazel_tom/0eaf2b6b7a8618527eb96256b130e46f/external/nasm/nasm-2.12.02.tar.bz2: Connection refused (Connection refused) and referenced by '@jpeg//:simd_x86_64_assemblage23'.
ERROR: Evaluation of query "deps((//tensorflow/... union @bazel_tools//tools/jdk:toolchain))" failed: errors were encountered while computing transitive closure.

(on the head of r0.12)

created issue #6956 for the nasm error

Closing this to tidy up issues. Feel free to re-open another issue with a different title if you want to track.


Remove some extraneous # noqa comments

Automated using yesqa with the following command:
pre-commit try-repo https://github.com/asottile/yesqa/ --all-files

Pull Request Check List
This is just a reminder about the most common mistakes.  Please make sure that you tick all appropriate boxes.  But please read our contribution guide at least once, it will save you unnecessary review cycles!
If an item doesn't apply to your pull request, check it anyway to make it apparent that there's nothing to do.

[x] Added tests for changed code. (N/A)
[x] New features have been added to our Hypothesis testing strategy. (N/A)
[x] Changes or additions to public APIs are reflected in our type stubs (files ending in .pyi). (N/A)

[x] ...and used in the stub test file tests/typing_example.py. (N/A)

[x] Updated documentation for changed code. (N/A)

[x] New functions/classes have to be added to docs/api.rst by hand. (N/A)
[x] Changes to the signature of @attr.s() have to be added by hand too. (N/A)
[x] Changed/added classes/methods/functions have appropriate versionadded, versionchanged, or deprecated directives. (N/A)

[x] Documentation in .rst files is written using semantic newlines. (N/A)
[x] Changes (and possible deprecations) have news fragments in changelog.d. (N/A)

If you have any questions to any of the points above, just submit and ask!  This checklist is here to help you, not to deter you from contributing!

(I mostly wanted to try out the latest release and make sure it didn't break anything -- sorry for the drive by!)


Add support for fix external

Codecov Report

Merging #28 (957ec25) into main (0e57a50) will increase coverage by 1.31%.
The diff coverage is 83.33%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main      #28      +/-   ##
==========================================
+ Coverage   15.06%   16.38%   +1.31%
==========================================
  Files           2        3       +1
  Lines         292      299       +7
==========================================
+ Hits           44       49       +5
- Misses        248      250       +2

Impacted Files
Coverage Δ

src/external.jl
82.35% <82.35%> (ø)

src/LAMMPS.jl
18.30% <100.00%> (-1.58%)
:arrow_down:

... and 1 file with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Sofar I have been following the pair_python code
https://github.com/lammps/lammps/blob/730e5d2e64106f3e5357fd739b44c7eec19c7d2a/src/PYTHON/pair_python.cpp#L189-L202
But I am unsure how to obtain eflag, evflag and special_lj as an external fix.

Sofar I have been following the pair_python code

Please note that in the flow of control, a post_force fix will be run after the reverse communication. So you must not store forces on ghost atoms. That information is lost. You either have to require newton_pair off or use a full neighbor list and store forces only on local atoms. Or you have to implement your own reverse communication (not recommended).

But I am unsure how to obtain eflag, evflag and special_lj as an external fix.

For starters, you can always compute energy and virial contribution and use the corresponding functions in the library interface to set them. At a later point we can look into an optimization to make that optional. It is really only a small performance optimization to not compute and tally those, if they are not required. You cannot use the "ev_tally" function, but there are library functions that you can call instead. https://docs.lammps.org/Library_utility.html#_CPPv437lammps_fix_external_set_energy_globalPvPKcd
Special_lj and special_coul are a different story. I would have to add access to those to the library interface so you can request those via lammps_extract_global() https://docs.lammps.org/Library_properties.html#_CPPv421lammps_extract_globalPvPKc
I will add that change to lammps/lammps#3687

https://github.com/lammps/lammps/pull/3687/commits/fa9062a87e74523048b561321c8f3859e774fd30
adds access to the special factor arrays.


New sals shipping

Wrapped control flow in function from the start. I'm new in GitHub so maybe make some mistakes during creating pull request

 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.


Milestone 2: User Interface

In this milestone, we set up a general overview of how the game logic should work, and what are the inputs we are going to get from the users, and the interface output to show them.

STATUS: APPROVED 🥳
Hey team @AymanJabr and @juxsalley, great job so far on the work you have done, it's impressive.  This project is therefore approved, go ahead and merge.
[TO IMPROVE] 🟢

[ ] Something to note on the next milestone, after a player has declared a move, do not display the question continue? Y/N. This can be tiresome for the player to keep inputting Y/N after each move.

Feel free to reach out to me on slack if you have any questions or something is unclear, or just comment on this PR and tag my name and I will be glad to help
Regards
Peris Ndanu


A problem about VAE

I want to know if, theoretically, using the pre-trained VAE weights you provided, I should almost perfectly reconstruct the motion from the feature input corresponding to HumanML3D's training data. However, in practice, the reconstructed motion is almost completely static. My process is simple: train dataset -> feature -> vae_encoder -> z -> decoder. Is there something wrong with this process?

I think the issue may be related to the data preprocessing. Have you used mean and standard deviation, and visualized your ground truth (GT) data to confirm that your data processing is correct? The modeling process itself seems fine.

Please use --nodebug for all your training.
https://github.com/ChenFengYe/motion-latent-diffusion/blob/081ce3152e5a95b14a4495fb2d32939c257c6216/README.md?plain=1#L210

I find there is no error on HumanML3D dataset. I think we don't need  to use mean and standard deviation when testing. Because the reconstructed features differ significantly from the original features before your feats2joints function. I wonder if there's a problem with using the .npy files directly from the new_joints_feature directory in the HumanML3D training set as input to the VAE. I imported these features directly as input, but the reconstructed features differ significantly from those in the original file.

In addition, I found that even without going through the VAE, forcing the corresponding .npy feature file to go through feat2joints still results in something different from the corresponding joints. Why is this happening? I have double-checked the mean and standard deviation of the HumanML3D dataset, and the deviations are zero. Could it be that some special preprocessing was done to the feature before it was input into the VAE?

I want to know if, when using a single data sample to construct a test demo set for testing the VAE, should the mean and standard deviation (std) be recalculated just for this single sample, or should they still be based on the entire dataset?

Now, I think the issue may be related to the data preprocessing, could you please tell me where new_joints_vector was specially handled before it was passed to training_step

Thank you very much. Indeed, it is a data preprocessing issue！I have solve it!


WIP monitor wormhole tunnel

As mentioned in #114, use node problem detector (npd) to monitor tunnel status and maintain as condition KubernikusTunnelStatus on each node. This is the simple approach relying on a scriptable way to check the status, if feasible. See comment below.
NPD runs as a ds in each kluster and will be part of kube-master chart.

Ah. I see.


wip: update(ci): use BUILD_WARNINGS_AS_ERRORS

What type of PR is this?
/kind feature
/area CI

Does this PR require a change in the driver versions?
No.

What this PR does / why we need it:
Recently we merged some code that had a couple minor warnings. Nothing serious but since the libs currently compile without warnings (except for a couple harmless ones we already excluded) it'd be great to keep it that way.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
@FedeDP @Andreagit97 -- I wonder if we had this flag already and disabled it on purpose? If so which one?
Does this PR introduce a user-facing change?:

NONE

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Uhm I don't remember if we ever had it, btw we can enable it and discover it on our skin :joy:

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: b212d9fcc19c9af5dcf8834b8802a519bef2424c

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


returned isDuck should allow use as ES6 decorator

https://github.com/tc39/proposal-decorators

This issue has been resolved by converting to ts and creating the duckorate function


Get-DbaUserPermission - column update - fixes #4887

@pagerwho can you please confirm these were the changes required?
thanks much!
fixes #4887

unrelated test failure, code works!

There should be additional changes to the stig.sql file as well.  This change will handle database names that contain special characters that have to be quoted.  Current function is to inject the database name in via a single replace on the target string .  This would result in quoted database names being returned in the result set, not the raw name.

Thank you, any chance you can make that change to the stig.sql file?

Change has been made


[ODPR-1609] - R1.2 Send Platform Operators & Reporting Notifications emails

As discussed we need to do refactoring and improve code coverage which we will do as part of a different ticket.
This still requires a removal of a couple of fields that are not needed by the templates. Those are related to the update PO templates.

Approving and a ticket will be created to address test coverage and comments.


OrtResult: Removed methods for accessing declared and concluded licenses

These functionalities can be implemented using the LicenseView via the
LicenseRule. This ensures that the user's package configurations are
taken into account.

Use present tense in the commit message: s/Removed/Remove/

@mnonnenmacher does this require rule adjustments on your side, or can we merge right away?

@mnonnenmacher does this require rule adjustments on your side, or can we merge right away?

You can merge it, no changes required.


Centered spinner in viewheight

It bothered me a lot that the spinner was always on the top left, especially on the homepage where it doesn't show any breadcrumbs while loading.

Thanks for the patch! I'll wait for @lucacasonato's approval.


sync import api view

@labhvam5 please test existing app as well, with this change (trigger import from UI as well as automated schedule)


keyholes: keep or loose key from inventory with ocb

I have included a new system for Keyholes. Now you can have one shot keyholes with a key trigger and multiple use keyholes with a switch trigger. But if you put a negative animnumber in the ocb of the keyhole you will loose the key from inventory and if you insert a positive animnumber into the ocb Lara will keep the key in the inventory.
One time keyhole with a key trigger:
positive OCB -> play anim number and keep key in inventory.
negative OCB -> play anim number and loose key from inventory.
multiple keyhole with switch trigger:
positive OCB -> play anim number and keep key in inventory.
negative OCB -> play anim number and loose key from inventory.
both:
OCB = 0 play anim number 131 (LA_USE_KEY) and keeps the key in inventory

I think it should be the opposite - positive or 0 OCB shoudl remove key from inventory, as it was by default.

I think it should be the opposite - positive or 0 OCB shoudl remove key from inventory, as it was by default.

fixed


Removes stored proc calls from resolvers

Removes references from the api to Stored Procs as described in #3003

Checklist

[ ] Affected Issues have been mentioned in the Closing issues section
[ ] Documentation has been written/updated
[ ] PR title is ready for changelog and subsystem label(s) applied

Explain the details for making this change. What existing problem does the pull request solve?

Closing issues
closes #3003

Tested quite extensively on a fully loaded local cluster - can't see any adverse impacts, all appears to work correctly!


Open sockets survive a full VM reload

I haven't carefully verified this but I suspect the following scenario can occur:

Start an app (e.g. a Flutter app).
In that app, open a network socket with Socket.connect.
Restart the VM that is running the app without terminating the host process. In Flutter terms, this is a "full reload" (R). This is a common thing to do when developing an app, e.g. after it has experienced an unrecoverable error.
I believe at this point the socket is still open and can no longer be closed.

This is problematic in particular when writing an app that talks to an IoT device that can only accept one connection at a time. For example, hypothetically, if one were writing a mobile app remote control for a Sharp LC-70UD27U TV. I'm just giving this as an example, I'm not saying it's what I was doing or anything.
cc @johnmccutchan

Heh, thats oddly specific :laughing:
Anyways I've experienced while developing an IRC bot. After using the vm restart command in the debugger the connection to the IRC server stays alive. I have no clue if the same happens for a ServerSocket, but that could be something else to test.

@zanderso what is the life cycle of sockets?
The full reload (R) kills the old isolate and spawns a new one. How long are the sockets from the old isolate  going to stay around for?

If neither side explicitly closes the connection, the open socket appears to languish in the eventhandler, whether or not the Dart object wrapping the socket disappears. The person who designed the socket lifetime probably didn't anticipate any sort of reload. I think it should be straightforward to attach a finalizer to the Dart object at the point where we write the native field, but I'll have to investigate whether that finalizer should directly call close(), or whether it should try to poke the eventhandler to get it to call close().

@zanderso Thanks for the clarification. We will need to the sockets closed as soon as the isolate dies. I don't think it matters whether or not we call "close" because the isolate is dead.

Thanks @zanderso !


[Improvements] Move TWAnyAddress logic to an internal class

Description
Improve TWAnyAddress memory handling by moving its logic to an internal class Address. Also, change internal representation to std::string. As requested in #2430.
How to test
Run unit tests
Types of changes

Bug fix (non-breaking change which fixes an issue)

Checklist

[X] Create pull request as draft initially, unless its complete.
[X] Add tests to cover changes as needed.
[X] Update documentation as needed.
[X] If there is a related Issue, mention it in the description.

Approving

Approving

@miloserdow can you rebase master?

Anonymous namespaces didn't help unfortunately

How about changing the test last part of namespace into something matching the source file name (like test::TransactionBuilder) ?


library documentation layout/css/styling

Maybe this is already an open issue. Compare the appearance of these pages:
https://www.boost.org/doc/libs/1_83_0/doc/html/align.html
https://boost.cppalliance.org/doc/libs/boost_1_83_0/doc/html/align.html
The new library documentation has no margins. The new page layout isn't formatted, and so is difficult to read in some cases.

@sdarwin that's definitely an unfortunate side effect.  What we are doing here is only injecting the header into the docs and leaving the rest of the content (body) to whatever styles are supplied with the documentation.
The question is do we make an assumption and provide some default styles like page margin or is it up to the doc authors make their content better?

is it up to the doc authors make their content better?

How does it work on the current site boost.org?  There are two possible versions of the library documentation.  1. what's included with the release bundle from jfrog.   2.  After the website replaces/reformats the headers.
Both of those are styled correctly.
The doc authors are already providing css information, because the original version of the docs from the release bundle are formatted.
In the case of the library mentioned above, and others, it could be this stylesheet:
<link rel="stylesheet" href="../../doc/src/boostbook.css" type="text/css">

I am not completely sure but @nessita might have more context. If I recall there are multiple php scripts based on the which docs are being parsed.

Actually, "../../doc/src/boostbook.css" is available on the new website. View Page Source, and clicking on the file.  So it's not as simple as a missing boostboost.css?

multiple php scripts

The php scripts can be bypassed, if you download a release bundle from here: https://boostorg.jfrog.io/artifactory/main/master/
Unbundle the archive.  Open the library's documentation directly, locally.   The formatting is generally correct without the PHP scripts.

The new website adds multiple new css files. The archive bundle (in many cases) only had one css file.  Could it be the new css styles, rather than merging, are overwriting the original.

@sdarwin the docs we are pulling in are using boostbook.css. We are injecting /static/css/docsstyles.css which is a very minimal set of style to only handle the header elements without a browser reset.  I have taken care to not use a reset so it doesn't break whatever styles are supplied within the documentation.  In our original prototype we had a lot of conflicts with the styles provided with the documentation which subsequently caused formatting issues in a lot of the docs so on one of the calls we made a collective decision to go the route we did.
As far as the PHP scripts, we are NOT using them.  That's how the original docs were being parsed.

@sdarwin happy to do a call with you if it makes it easier to work through this issue and figure out next steps

happy to do a call with you if it makes it easier

Greg's working on some ideas to update the styles.  Examples: Go to https://www.boost.cppalliance.org/libraries/  Check the first libraries in the list: Accumulators, Algorithm, Align, Any, Array.

What @sdarwin and I have discovered is:
The modernizer is set to med which does a good job of styling the header but it's too opinionated for the body content so I'm going to take out the injection of style.css and fix any issues that remain for the header and mobile navigation.  When we use min for the modernizer the body content is pretty good but the header is broken.

It's looking much better!!
Checking some pages:
https://www.boost.org/doc/libs/1_83_0/doc/html/align/reference.html
https://www.preview.boost.org/doc/libs/1_83_0/doc/html/align/reference.html
The function on boost.org:
void* align(std::size_t alignment, std::size_t size, void*& ptr, std::size_t& space);

And the new site:
void * align ( std :: size_t alignment , std :: size_t size , void *& ptr , std :: size_t & space );

In your browser, do you get that result or not?  It's apparently formatting the C++ code differently by adding spaces, s p a c e s, which might break the function.
At the top of the page on boost.org Reference and Functions are followed by a list enclosed in a box.  On the new site, Reference and Functions are followed by a list which is very widely spaced. And not enclosed in a box.
If in css "a more specific selector takes precedence over a less specific one", could the top level injected website header be set to specific css ids and specifically controlled.  Then allow the rest of the page, which is the library documentation, to use any general css rules, including basic div, table, etc

@sdarwin this is what I see in Chrome

and this is Safari

As far as the borders on the functions and reference, and anything else in the body content, my CSS is only setting the body font of Cairo and a little margin on the X axis.  docstyles.css is not doing anything else in there.  That is all coming from boostbook.css or the default browser styles.  I'm not even loading a browser reset.

About the borders of functions and reference, in boost.org that is set with

which has been removed in temp-site. Probably by core/htmlhelper.py.   In that file it is "removing tags" and "removing classes".
If the original formatting is left intact it is guaranteed to be correct isn't it?  Except for "CSS classes that produce visual harm" mentioned by htmlhelper.py which I am not clear about since boost.org itself has not removed tags or classes.   Ok, it is specifically removing those classes:
    ("div", {"class": "toc"}),
    ("dl", {"class": "toc"}),

what is the reason?  If "toc" is returned to the css what problem would it cause?

About the extra spaces being added to void* align(std::size_t alignment... , what seems to be happening is that when beautiful soup imports or exports content, it's placing each and every element on it's own line, with whitespace in between, such as:

           size_t

           &

           space

In the original html, some of those  elements are packed closely together without any newline or space. So in the original content, between certain elements, there is no space of any kind.    In the new website, if now it's generating line breaks with indentation, that will cause spaces to be added.

I do not know what the original intent of removing classes on TOC but I see where you are referencing that and I turned that off to get the results below.
A lot of the tables are being blocked because (from reading comments) they are how the headers are constructed that we do not want.  I'm continuing to work through some of these docs to see what side effects some of these have @sdarwin

I made a few more changes that fixed the table of contents margins and merged the progress into develop @sdarwin .  I'm not done but making progress.  Next I'm looking into the spacing on code blocks.

In core/htmlhelper.py try changing:
    content = result.prettify()

to
    content = str(result)

Before I quit for the day I was already inspecting that @sdarwin but I’m looking at the formatter options first.

It's the smallest possible change, to remove prettify. And seems to fix it.  :-)
https://www.cppal-dev.boost.cppalliance.org/doc/libs/boost_1_83_0/doc/html/align/reference.html

@sdarwin this is merged in. I wasn't arguing the fix.  It's been a very long time since I've looked at anything Beautifulsoup so wanted to ensure I knew of any possible side effects.

With these changes in place, most of the library documentation pages are perfect!
An idea is to click on random libraries, browse through a few pages, and see if there are any mistakes.  I have done this a bit, and most of them seem ok.
Except github issue 621.   For that, I wonder if some specific logic could be added into core/htmlhelper.py that would only target those problematic libraries using the "frame" html tag, and somehow fix this, without breaking anything else on the site.
Keep in mind you can download a release archive from https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/ , unzip it, and open documentation locally in a browser.  That clarifies what the small differences are between a source archive compared to the new headers the boost.org website adds.

That's good news @sdarwin
I've assigned #621 to myself and looking into this issue.

@sdarwin can this issue be closed and any subsequent side effects spawn new issues?

can this issue be closed

Ok, I will close this. We should keep in mind there may still be some small issue on a documentation page caused by the new headers.  Check a few of the pages, from time to time.


feat(protocol): remove caching from signal service

Why? I think no relayer will be willing to cache anything as now the fee is no longer a fixed one so caching will only enable users to pay less fees. If caching is a feature we don't expect to be used, we should remove it.

The fee for the proof calldata is still fixed if I understand correctly (it's part of GAS_RESERVE), so the relayer should still be able to make use of caching to reduce the calldata cost for himself, while the user gets the benefit of not having to verify the additional proof logic.
Even though I proposed also making the verification cost fixed for the user, I think it still works out with the current fee system because the extra calldata for the account proof should be significant (the 20k gas for caching is only ~1250 bytes of calldata), so the caching cost should be worthwhile for a relayer when he can batch even maybe just two bridge messages (though not really sure anymore how big these merkle proofs were in practice, but I vaguely remember ~6k bytes but I could be wrong).

Alright, lets keep the feature for now.


Correct mentions of "Azure Container Service" to use Azure Kubernetes Service instead in "About Windows container"

Correct the doc of "About Windows container" mentions of "Azure Container Service" to be "Azure Kubernetes Service" instead.
Because Azure Container Service is deprecated, and all mentions of Kubernetes are using Azure Kubernetes Service as the official name of AKS. See also AKS documentation landing page.
Also correct the name of DockerHub, replaced with Docker's official "Docker Hub". Because the official name of Docker Hub is not DockerHub.

OK, looks like I have to base my PR on live branch instead of master branch.
I'm closing this PR, and going to create new one.


Find proper types

We need to find proper typescript types for (or write them ourselves):

[ x ] uint's
[ ] bits
[ x ] hash32

David's library should do the trick for uints. ~As for hash32 bits and bytes unsure.~

These types are not "native" types in any programming language as in most programming languages that are being used for sharding have to check inputs and outputs and define these types themselves. If you look at the ssz codebase (https://github.com/ChainSafeSystems/ssz-js), this is what was done.
Note that hash32, in particular, is effectively bytes but with some caveats. Again, look through the ssz code.

@aunyks were discussing this in the currently open pr

I think we can close this per #62 which is now closed?


error: expected tracing enabled event

Hello!
I've noticed that when I trace user code (using attr.exclude_kernel = 1) and there's a system call in the trace, then ptxed will generate en error message upon returning to user-space:
$ ptxed --cpu auto, --block-decoder --block:end-on-call --block:end-on-jump \
            --block:show-blocks --pt ...
...
0000557a22886c5c  mov edi, dword ptr [rdi+0x18]
0000557a22886c5f  call 0x557a22878f58
[block]
0000557a22878f58  jmp qword ptr [rip+0x2f1c7a]
[block]
00007fde76ddfe00  mov eax, 0x10
00007fde76ddfe05  syscall
[disabled]
[3ec80, 7fde76ddfe07: error: expected tracing enabled event]         <--------- this
[block]
00007ffe85dc5a20  jle 0x7ffe85dc5b1d
[block]

Is that supposed to happen? If not, I'm wondering if that's a bug in ptxed, the Linux kernel I'm using (4.9.30-2+deb9u5), or the chip itself?
Any ideas?

Hello Edd,
This is not supposed to happen.  Is this reproducible?  Does it always happen?  Only for syscalls or also for interrupts?  What perf command-line did you use?
Could you share the trace around the error?  What processor are you using?
You may also want to check for sideband warnings using --sb:warn.  This would give a trace loss warning if perf can't keep up with trace generation.
thanks,
markus.

Hi Markus,
Give this a shot:
http://theunixzoo.co.uk/random/trace_problem.tbz2
This contains the problem trace, all of the code needed for decoding, and a script to run ptxed with all of the code loaded at the right offsets.
You should see the error I pasted above when you decode.
[It's a long trace, so make sure to use less(1)]

Hello Edd,
Have you checked for trace losses when collecting the trace?  When mapping the AUX buffer read-write, new trace that would overwrite existing trace in the AUX buffer will be discarded.
Perf indicates this with a PERF_RECORD_AUX with PERF_AUX_FLAG_TRUNCATED set.  This is what the --sb:warn option checks in order to generate the trace loss warning.  You're not using libipt's perf sideband decoder so the option won't have any effect.
thanks,
markus.

Morning Markus. I'm currently implementing this check.
I'll report back when I have it working.

You were right Markus. The samples were being truncated. If I raise an overflow event when the AUX buffer is 50% full (instead of the prior 75%), then no samples are truncated.
However, this does not stop the error from ptxed being printed. Even when no sample is truncated, ptxed, we still have:
...
00007f8048d75e00  mov eax, 0x10
00007f8048d75e05  syscall
[disabled]
[2a570, 7f8048d75e07: error: expected tracing enabled event]
[block]
000055dcc6f1298b  add rsp, 0x40
000055dcc6f1298f  pop rbp
000055dcc6f12990  ret
...

It always happens after the syscall.
What I also find interesting is that the code I'm tracing doesn't (I don't think) make any system calls. I'm tracing the following with iters=50000:
    #[inline(never)]
    pub fn work_loop(iters: u64) -> u64 {
        let mut res = 0;
        for _ in 0..iters {
            // Computation which stops the compiler from eliminating the loop.
            res += SystemTime::now().elapsed().unwrap().subsec_nanos() as u64;
        }
        res
    }

I expect getting the system time to boils down to a call to the VDSO.
By dividing iters by 10 (i.e. 5000), we don't see the error, it only happens for long traces. With 5000 iters, the ptxed output around the syscall looks like this:
[block]
0000555ee6767af0  jmp qword ptr [rip+0x3380ba]
[block]
00007fc7a4177e00  mov eax, 0x10
00007fc7a4177e05  syscall
[disabled]

[enabled]
[exec mode: 64-bit]
[block]
00007fc7a4177e07  cmp rax, 0xfffffffffffff001

We see the enabled event here.
(The syscall we see called above is 10, which according to the linux sources is mprotect. I wonder who is calling mprotect)
Do I have to do anything special for context switches?

Hello Edd,
the VDSO does the syscall.
So it is working fine also with the syscall as long as the trace is short enough.  Maybe short enough to not wrap around the AUX buffer?
I would still expect some collection error either due to overwrites, truncates, or bad stitching of the trace pieces.
The syscall gives a moment of rest where tracing is temporarily disabled.  Maybe that's why you're seeing this always after a syscall.  You could try replacing it with a simple volatile variable increment or some other trivial code and increase iters to compensate.
You could also try recording your sample application with perf to get a second opinion from another tool.
regards,
markus.

Hi,
I copy packet data out of the AUX buffer in chunks, once each time I receive a PERF_RECORD_SAMPLE. Once I have stopped tracing and have the whole trace in a separate heap allocated buffer, I then decode the whole lot in one go.

Can you reproduce the issue when recording with perf or simple-pt?

I'll give it a go. I didn't realise perf record would store the trace in a format ptxed would understand.

Interesting.
I put the work loop in its own binary and recorded it using perf:
$ perf record -e intel_pt//u ./target/debug/trace_bug
result=980144
[ perf record: Woken up 2 times to write data ]
[ perf record: Captured and wrote 3.400 MB perf.data ]

If we run ptxed on the result:
$ ptxed --pt perf.data
...
[1fba3e, 7fff0fbaea20: error: no memory mapped at this address]
[1ff9ee, 7fff0fbaeb52: error: no memory mapped at this address]
[disabled]
[2039d8, 7fff0fbaeb52: error: expected tracing enabled event]
[207caf, 56382a918d80: error: no memory mapped at this address]
[20bc7e, 7fff0fbaea20: error: no memory mapped at this address]
...

Notice the error: expected tracing enabled event line is present again. So assuming that my test isn't invalid on account of not loading the code (i guess that after seeing a pgd packet ptxed is just checking that no other packet appears before seeing a pge packet?) the problem seems to be outside of my code(?).
Here's the packet stream around that offset as reported by ptdump:
...
00000000002039c8  tip.pgd    0: ????????????????
00000000002039c9  mtc        ec
00000000002039cb  mtc        ed
00000000002039cd  mtc        ee
00000000002039cf  pad
00000000002039d0  mtc        ef
00000000002039d2  mtc        f0
00000000002039d4  mtc        f1
00000000002039d6  pad
00000000002039d7  pad
00000000002039d8  tnt.8      ...!.
00000000002039d9  pad
00000000002039da  pad
00000000002039db  pad
00000000002039dc  pad
00000000002039dd  pad
00000000002039de  tnt.8      ..
00000000002039df  pad
00000000002039e0  cyc        1
00000000002039e2  pad
00000000002039e3  pad
00000000002039e4  pad
00000000002039e5  tnt.8      ....
00000000002039e6  tnt.8      !...
...

So we can see that there's a pgd then a tnt withoutpge first. I think that is why ptdump is upset.

Hello Edd,
Ptxed and ptdump don't understand the perf.data format.  You'd need to run a few scripts to split perf.data into separate files that the tools understand.  See doc/howto_capture.md for details.
thanks,
markus.

Hi Markus, thanks for bearing with me through this rather long thread. I appreciate your help.
OK, let's see if I have this right.
$ perf record -e intel_pt//u -T --switch-events -- ./target/debug/trace_bug
result=1032787
[ perf record: Woken up 2 times to write data ]
[ perf record: Captured and wrote 3.403 MB perf.data ]
$ ~/research/hwtracer/c_deps/processor-trace/script/perf-read-aux.bash
$ ~/research/hwtracer/c_deps/processor-trace/script/perf-read-sideband.bash
$ ls perf*
perf.data               perf.data-sideband-cpu0.pevent  perf.data-sideband-cpu2.pevent  perf.data-sideband.pevent
perf.data-aux-idx0.bin  perf.data-sideband-cpu1.pevent  perf.data-sideband-cpu3.pevent
$ ptxed $(~/research/hwtracer/c_deps/processor-trace/script/perf-get-opts.bash -m perf.data-sideband-cpu0.pevent) --event:tick --pt perf.data-aux-idx0.bin
[enabled]
[perf.data-sideband-cpu0.pevent:0000000000002e30 sideband error: bad configuration]
[exec mode: 64-bit]
[disabled]
[resumed]
00007f6c0b993c20  mov rdi, rsp
00007f6c0b993c23  call 0x7f6c0b994860
00007f6c0b994860  push rbp
00007f6c0b994861  mov rbp, rsp
00007f6c0b994864  push r15
...

So that seems to have worked. A couple of things pop out:

There are several instances of error: no memory mapped at this address.
Early in the trace we have: [perf.data-sideband-cpu0.pevent:0000000000002e30 sideband error: bad configuration]. Not sure if that's an issue.
There is no error: expected tracing enabled event line present.

WRT to the first point, I speculated that this could be to do with the VDSO. Initially I didn't specify any VDSO args as the docs say ptxed will dump one itself if that argument is omitted. I tried using my own VDSO (dumped using this little tool I wrote: https://github.com/vext01/dump_vdso) and added a --pevent:vdso-x64 /tmp/linux-vdso.so.1 argument. It didn't seem to make a difference.
FWIW here are the arguments that your perf-get-opts.bash script generated:
$ ~/research/hwtracer/c_deps/processor-trace/script/perf-get-opts.bash -m perf.data-sideband-cpu0.pevent
 --cpu 6/94/3 --pevent:time-shift 31 --pevent:time-mult 596523235 --pevent:time-zero<PHONE_NUMBER>9915133633 --cpuid-0x15.ebx 300 --cpuid-0x15.eax 2 --nom-freq 36 --pevent:sample-type 0x10086 --mtc-freq 0x3 --pevent:primary perf.data-sideband-cpu0.pevent --pevent:secondary perf.data-sideband-cpu1.pevent --pevent:secondary perf.data-sideband-cpu2.pevent --pevent:secondary perf.data-sideband-cpu3.pevent --pevent:secondary perf.data-sideband.pevent

Hello Edd,
The "sideband error: bad configuration" doesn't look good.  This may explain all the "error: no memory mapped at this address" and it may hide the issue we're looking for.
If you're OK to share the perf.data and all the binaries you were tracing, I could debug this.  You'd need to run .../script/perf-copy-mapped-files.bash -o  to copy all the relevant files into .
You can also try to debug this yourself if you want.
thanks,
markus.

Oh, earlier I said:
Yes, it seems pretty reproducible using the test suite for my project (I'm now running ptxed to check that my decoding agrees with yours :) )

Oops, that's not entirely true.
The test suite repeatedly tries to get a trace which was not interrupted, and it does this by looking for the absence of a  [resumed] line in the ptxed output (Initially I'd done this because resuming from a context switch caused a block to be artificially split).
We know that these long traces always have a syscall which should always cause [disabled] and [resume] lines (because I've configured perf not to trace into the kernel). So inadvertently, my tests loop around many times getting completely valid traces without the error: expected tracing enabled event line present. Only on rare occasions does that line crop up, so perhaps something is racy...
Hopefully that make sense.

Hi Markus,

If you're OK to share the perf.data and all the binaries you were tracing, I could debug this.

I think I should have a go at this myself. I'm quite aware that I'm consuming a lot of your time already.
I'll start looking into this tomorrow morning. Thanks!

So the "sideband error: bad configuration" error comes from the fact that ptxed can't find the vdso code.
Breakpoint 1, pt_sb_pevent_find_vdso (pvdso=0x7fffffffcb50, priv=0x555555762150, context=0x555555762e60)
    at /home/vext01/research/hwtracer/c_deps/processor-trace/sideband/src/pt_sb_pevent.c:195
195             if (!pvdso || !priv || !context)
(gdb) n
198             vdso = NULL;
(gdb)
200             switch (context->abi) {
(gdb)
205                     vdso = priv->vdso_x64;
(gdb) p priv->vdso_x64
$1 = 0x0
(gdb) n
206                     break;
(gdb)
217             if (!vdso)
(gdb)
218                     return -pte_bad_config;

It's my understanding that if I don't supply arguments to specify where to get the VDSO code, then ptxed will attempt to dump one itself, correct?
FWIW priv->vdso_x64 remains NULL when appending --pevent:vdso-x64 /tmp/linux-vdso.so.1 to the command line args. This doesn't seem right...
Does --pevent:vdso-x64 expect an ELF object, or raw code?
$ file /tmp/linux-vdso.so.1
/tmp/linux-vdso.so.1: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=de7dac2df9f596f46fa94a387858ef25170603ec, stripped

Looking deeper...

OK, I see what's going on here. Two things:

ptxed is unable to acquire the VDSO code on its own, and requires me to specify a --pevent:vdso-x64 argument. Is the auto-find-the-vdso code that the docs references broken or absent?

If the native flavor is not specified or the specified file does not exist, ptxed will copy its own vdso into a temporary file and use that.

When manually pointing ptxed to VDSO code you've dumped yourself, the --pevent:vdso-x64 argument MUST come before any --pevent:primary or --pevent:secondary: arguments.

Because I was appending the --pevent:vdso-x64 argument on the end of the invocation, it was failing to find the VDSO when processing the primary and secondary side-channel arguments. I wonder if we should mention this in the docs?
If I move the --pevent:vdso-x64 to before the other args, the trace decodes fine.
I'll now write a script to repeatedly trace and decode to see if I can reproduce the error: expected tracing enabled event line.

Hello Edd,
Thanks for looking into this.  The dump-own-vdso approach was wrong and I removed it.  It really only worked in the native case.  It's much better to rely on perf's buildid-cache.  It seems that I forgot to update the documentation.
Ptxed isn't really a user-friendly tool.  I should split option processing and the actual configuration to avoid those dependencies between options.
regards,
markus.

Great. I'm glad we solved that small mystery at least.
My script has run 35 times (out of 100 for now) and not seen the error: expected tracing enabled event error yet. This is casting doubt on my code once again.
A few vague leads:

When I trace a tid using perf_event_open, will the kernel deal with migrations between CPUs automatically? I wonder if the process moves CPU while in the kernel and somehow misses the enabled packet?

I'm not using side-band information for decoding at all. I only use side-band info whilst tracing to detect truncation. Is that OK, or would that cause bad decodes?

Ah! Is this to do with:
https://github.com/01org/processor-trace/blob/24982c1a6fce48f1e416461d42899805f74fbb26/test/src/skd010-tip_pgd.ptt#L27-L38
From earlier in the thread, your helper script had emitted the argument:
--cpu 6/94/3

Which looks like it's one of the affected CPUs, right?
000000000003ed87  tip        3: 00007fcea48a4e00
000000000003ed8e  pad
000000000003ed8f  pad
000000000003ed90  tip.pgd    0: ????????????????
000000000003ed91  pad
000000000003ed92  pad
000000000003ed93  pad
000000000003ed94  pad
000000000003ed95  pad
000000000003ed96  pad
000000000003ed97  pad
000000000003ed98  pad
000000000003ed99  pad
000000000003ed9a  pad
000000000003ed9b  pad
000000000003ed9c  pad
000000000003ed9d  pad
000000000003ed9e  pad
000000000003ed9f  pad
000000000003eda0  tnt.8      .!..!.             <--------------- MISSING TIP.PGE!
000000000003eda1  tnt.8      !.!!!!
000000000003eda2  tnt.8      !.!
000000000003eda3  pad
000000000003eda4  pad
000000000003eda5  pad
000000000003eda6  pad
000000000003eda7  tip        3: 00007fcea48b9970

But I didn't see any overflow packet...

There's also SKL042, which says:

If an Intel PT (Intel® Processor Trace) internal buffer overflow occurs immediately before software executes a taken branch or event that enters an Intel PT TraceStop region, the OVF (Overflow) packet may be lost.

Also potentially relevant SKL062:

A TIP.PGE (Target IP, Packet Generation Enabled) or TIP.PGD (Target IP, Packet Generation
Disabled) packet may not be generated if Intel PT (Processor Trace) PacketEn changes after IA32_RTIT_STATUS.FilterEn (MSR 571H, bit 0) is re-evaluated on wakeup from C6 or deeper sleep state.
When code enters or exits an IP filter region without a taken branch, tracing may begin or cease without proper indication in the trace output.

The latter sounds very suspicious to me.

Hello Edd,
SKD010 would require an overflow, SKL042 applies to TraceStop regions, and SKL062 applies to IP Filter regions.  Are you using TraceStop or IP filters?
Regarding task migration, perf can be configured per-thread, in which case it allocates one buffer per task and swaps buffers during context switch.  When the task is migrated, its trace buffer migrates with it.
Or or it can be configured per-cpu, in which case it would allocate one buffer per cpu that may contain trace from several different threads.  You don't need migration to get the TIP.PGE from a different task than the previous TIP.PGD.  You should always get consistent trace, though.
Regarding sideband, you will run into decode errors (or bad decodes) if you're tracing more than one process without sideband to tell them apart.  You also need sideband information if your process image changes, e.g. if you're dynamically loading and unloading shared libraries or if you're dynamically instrumenting the code.  If you're only adding to the process image, you should be OK with a snapshot at the end.  You should always get consistent trace, though.
regards,
markus.

Morning Markus,

Are you using TraceStop or IP filters?

I'm using only ioctls to turn on and off tracing.

Regarding task migration, perf can be configured per-thread

I'm passing a +ve thread id and -1 for cpu to to perf_event_open, which should be       "the specified process/thread on any CPU". My intention is to trace one thread only. Just so long as there's no extra work to be done on my part if the thread moves core, then that's fine. But I wasn't totally sure if the Linux itself uses any of the features touched by those bugs...

Regarding sideband, you will run into decode errors (or bad decodes) if you're tracing more than one process without sideband to tell them apart

That's fine, I won't be doing this.

You also need sideband information if your process image changes

And at-least to begin with, I'm assuming the code doesn't change, so that should be OK.
I'm just upgrading the BIOS on the machine in question, just to be sure. It's a Dell R330 with a:

Intel(R) Xeon(R) CPU E3-1270 v5 @ 3.60GHz

Is the only way I'd be notified of packet loss for a PROT_READ | PROT_WRITE mapped AUX buffer via PERF_AUX_FLAG_TRUNCATED being set in a flags attr of a PERF_RECORD_AUX sample? I see that there are also explicit overflow packets that can appear in the AUX buffer. I've never seen one such packet.

Ah, I think I've spotted the problem. I may be able to close this shortly! :)

Yeah, this was an issue with my code that was reading out of the AUX buffer.
Thanks so much for your help.


fix an issue with redis when net.LookupIP returns duplicate ips

environment: rdsync + redis with patches from redis_patches/* - 3 nodes
error:
Jun  5 15:30:16 host1.example rdsync[8375]: time=2024-06-05T15:30:16.218 level=DEBUG msg="Setting quorum replicas to host2.example:6379 host1.example:6379 <IP_ADDRESS>:6379 <IP_ADDRESS>:6379 <IP_ADDRESS>:6379 on host3.example"
Jun  5 15:30:16 host1.example rdsync[8375]: time=2024-06-05T15:30:16.218 level=ERROR msg="Update active nodes: failed to actualize quorum replicas" error="ERR CONFIG SET failed (possibly related to argument 'quorum-replicas') - Unable to set quorum replicas."
Jun  5 15:30:16 host1.example rdsync[8375]: time=2024-06-05T15:30:16.218 level=ERROR msg="Failed to update active nodes in dcs" error="ERR CONFIG SET failed (possibly related to argument 'quorum-replicas') - Unable to set quorum replicas."

"<IP_ADDRESS>:6379" listed twice in the DEBUG message
this happens if there are similar entries in /etc/hosts
/etc/hosts
...
<IP_ADDRESS> host1.example
<IP_ADDRESS>   host1.example rdtest1
...

so net.LookupIP returns two IPs for host1.example
Redis side:
redis_patches/0004_Add_waitquorum_command.patch
dictAdd fails if the record already exists
if (dictAdd(server.quorum_replicas, quorum_replica, NULL) == DICT_ERR) {
*err = "Unable to set quorum replicas.";

uniqIPs func was added to fix this issue, I believe it may be useful in an environment where /etc/hosts cannot be edited
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

Nice catch. Fixed in 5cf27eb with adding some tests.


Mainly question

so your description says client only but when I play on a server there is no lighting around me when holding torch. Also something with this mod an dokucraft 1.19.2 causes sky to flicker

could you list every mod your using for both scenarios as well as the server you were playing on?  Were you using rubidium or shaders, as those both are unsupported? (sorry for the delay in response lol)

Ive done a little testing and found that certain resource packs have issues with the lighting, the running theory is that resource packs that mess with the vanilla shaders break the mod (such as the waving leaves in dokucraft).  I recommend disabling packs that dont work with it until i can come up with a fix.


Change ownership to Conversion Rate Optimization team

Subject says it all.
Slack Conversation
https://ezcater.slack.com/archives/C06AUTDKSRY/p1705694376687399

🚁 Looks like the repo permissions need updated, but I 💚 this!

✅  Team added!
✅  Settings updated!

Unsure of why the CODEOWNERS check is still failing 🤔. Says it's passing here:


Provide different size versions of the image taken or selected from gallery

Feature Request:
Could it be possible to provide multiple different size images from the picture taken or selected? Would be nice for example to generate a small, medium and large version of the image selected or taken with camera.

Recommendation is to return largest and implement resizing on app's size this is out of scope for the library.


Showcase Submission for ml5/hand-pose

Thank you Peyman Majidi (peymanx) for your contribution! A member of the Coding Train team will review it shortly.

On Screen Menu, Hover and click on items via your finger tips
Peyman Majidi (peymanx)

Great job!!


Remove quay provider from spi shared config in preview mode

both the 'github' and 'quay' parts were getting the values from the same environment variables, so setting them essentially generated a config with 2 identical providers (which is invalid)
removing the quay part since nobody seems to be using it anyway

From what I know, regarding SPI, only oauth is being used. But I will
confirm with the QE team.
On Thu, Apr 13, 2023 at 12:08 PM Sergii Kabashniuk @.***>
wrote:

The consequence of this action would be the fact that spi will not have a
quay provider configured. That would be a good indicator to know if someone
uses Quay secret upload and not using oauth.
@rsoaresd https://github.com/rsoaresd @albarbaro
https://github.com/albarbaro Do you happen to know if e2e has something
that uses Quay token upload today?
—
Reply to this email directly, view it on GitHub
https://github.com/redhat-appstudio/infra-deployments/pull/1657#issuecomment-1506775671,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A4Q7GRZIYLI5BEW7YV7G4SLXA7NCDANCNFSM6AAAAAAW45IZPQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


Refine Continuous Integration processes

:calendar: August status: Delayed due to increased scope and new personnel

Done! All sub-tasks completed. https://github.com/NASA-PDS/devops/issues/10 moved to B12.1


Bug: Hide empty checklists in overview and mark finished checklists

In the board overview (the normal board view) empty (0/0) checklists are shown. A better behavior would be to hide them and mark them in green or something like that once completed

Ya they're supposed to be hidden - not sure why they're being shown again. I'll take a look at this!


Database diagram

It might be helpful if we had a diagram showing the current database schema for reference. We can generate this with a variety of tools, but it would be best if there's some way to automatically update and display a diagram somewhere when changes are made.

We do have the one in the hasura explorer, but I agree it would be nice to have one in this repo


Random point sampling on xarray dataarrays

Proposed changes
A new function that will generate randomly sampled points to assist in post-classification accuracy assessment.  The options in this function mimic those found in ArcGIS's Create Accuracy Assessment Points and R's spsample, but will work on xarray objects.
To test this function, supply a classified 2D xarray.DataArray, and pick one of the methods listed in the doc strings.
e.g. For stratified random sampling:
gdf = random_sampling(da=da,
                    n=500,
                    sampling='stratified_random',
                       )

To manually enter the number of points per class (this can be a subset of the classes if you wish):
gdf = random_sampling(da=da,
                    n=500, #this is ignored if sampling = 'manual'
                    sampling='manual',
                    manual_class_ratios={'0.0': 200, '1.0':150}
                       )

This code works well for datasets that are smaller than ~1-2 billion pixels, but uses too much memory if applied to larger datasets.  Closing this PR and will reopen once a method is refined for sampling on very large datasets.


Reduce NameServiceDispatcher interval

@ldalves

or @jonmv. Increasing it made dispatch too slow.

If it needs to run often, but runs for a long time when it does, we just have to accept some collisions :)


[Experimental] graphql support

did a basic implementation, so you can get lists like this:
{
  apiNamespaces {
    id
    name
    slug
    version
    properties
    apiResources {
      id
      properties
    }
  }
}


numpy版本导致的错误：numpy==2.0.0

Reminder

[X] I have read the README and searched the existing issues.

System Info
The bug from:
numpy                     2.0.0                    pypi_0    pypi

Reproduction
llamafactory-cli train -h

Error show as:
ImportError: cannot import name 'BUFSIZE' from 'numpy' (~/anaconda3/envs/llama_factory/lib/python3.10/site-packages/numpy/__init__.py)

Expected behavior
Method:
pip install numpy==1.26.4

Others
貌似不兼容numpy==2.0.0，我回退numpy==1.26.4即可正常运行llamafactory-cli train -h

Same question!

fixed by #4382


Create a full Azure DevOps pipeline definition example

We should have somewhere a large pipeline definition that would showcase how to run all of the different parts of the pipeline since it might not be clear to everyone after they start using Sharpliner.
It should showcase all of the weird parts such as conditions in template parameters and so on..

could be a good idea to look at using https://github.com/patriksvensson/dotnet-example to provide a mechanism for launch these examples