Mutual authentication with tls

Describe your question
I have a mqtt broker like emqx，it support mutual authentication with tls,  I connect the broker successfully by using Mqtt.fx client software. but I don't known how to set the tls option with MQTTnet,  The wiki is also not clearly. Can you can help me?
The Mqtt.fx screenshot.

Which project is your question related to?

Client
Mqttnet version: 3.0.5
Net core version: 2.2

#115 #695
I saw these issues , but still have no idea.

 .WithTls(o =>                 {                     o.UseTls = true;                     o.Certificates = new List<byte[]>                     {                         new X509Certificate(@"C:/Users/liqia/Downloads/server/ca.pem", "").Export(X509ContentType.Cert),                         new X509Certificate(@"C:\Users\liqia\Downloads\newclient\client.pfx", "").Export(X509ContentType.Cert)                     };                     o.CertificateValidationCallback = (x509Certificate, chain, sslPolicyErrors, mqttClientTcpOptions) => true;                 })
I have generated the .pfx cert file and import them . and I received the fllowing exception
The message received was abnormal or incorrectly formatted

You might take a look at this project: https://github.com/SeppPenner/NetCoreMQTTExampleJsonConfig/blob/b5159009f33e23b425313ac8cfcb361474c0688b/NetCoreMQTTExampleJsonConfig/Program.cs#L47. I'm using a certificate succssfully in there.

try .Export(X509ContentType.SerializedCert)
There is also a way to use the certs in their original pem and key format, but I am still working on a blog post for that!

You might take a look at this project: https://github.com/SeppPenner/NetCoreMQTTExampleJsonConfig/blob/b5159009f33e23b425313ac8cfcb361474c0688b/NetCoreMQTTExampleJsonConfig/Program.cs#L47. I'm using a certificate succssfully in there.

it's a server demo. but I need a client demo

try .Export(X509ContentType.SerializedCert)
There is also a way to use the certs in their original pem and key format, but I am still working on a blog post for that!

I run it successfully when I import the cert to windows certmgr.  but when run in linux system, it still has a exception.
MQTTnet.Exceptions.MqttCommunicationException: Authentication failed, see inner exception. ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+OpenSsl+SslException: SSL Handshake failed with OpenSSL error - SSL_ERROR_SSL. ---> Interop+Crypto+OpenSslCryptographicException: error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure

it's a server demo. but I need a client demo

Sorry, I misunderstood you here.

This is also something to be documented once it works. I can do that if we find a solution.

So with my code, I can also connect to AWS on windows, but not on Linux. In my case I receive:

I have a suspicion that both of these issues might be related to https://github.com/dotnet/corefx/issues/34740#

Hi everyone, i'm facing a similar problem with my code. I found that on linux it doesn't send the certificate to the broker (i'm tring to make it work an aks), while on a windows VM it connects and reads messages.
here is my code:
` var mqttBrokerCertPubKey = new X509Certificate(cAcertificatePath);
var mqttDmiClinetCert = new X509Certificate2(clientPfxCertificatePath, pfxPassword);
        //var mqttClientCert = new X509Certificate(clientCrtCertPath, "", X509KeyStorageFlags.Exportable);

        Console.WriteLine($"Configuration: topic-> ${topicSubscription}, clientId-> ${mqClientId}, address->${mqTcpAddress}, caPath->${cAcertificatePath}, certPath->${clientPfxCertificatePath}");

        var options = new ManagedMqttClientOptionsBuilder()
        .WithAutoReconnectDelay(TimeSpan.FromSeconds(5))
        .WithClientOptions(new MqttClientOptionsBuilder()
                    .WithProtocolVersion(MQTTnet.Formatter.MqttProtocolVersion.V311)
                    .WithClientId(mqClientId)
                    .WithTcpServer(mqTcpAddress, Configuration.GetValue<int>("port"))
                    .WithCommunicationTimeout(new TimeSpan(0, 2, 30))
                    .WithCleanSession()
                    .WithTls(new MqttClientOptionsBuilderTlsParameters()
                    {
                        UseTls = true,
                        AllowUntrustedCertificates = true,
                        Certificates = new[] { mqttBrokerCertPubKey.Export(X509ContentType.Cert), mqttDmiClinetCert.Export(X509ContentType.Pfx) },
                        IgnoreCertificateChainErrors = true,
                        IgnoreCertificateRevocationErrors = true,
                        SslProtocol = SslProtocols.None,
                        CertificateValidationCallback = (X509Certificate x, X509Chain y, SslPolicyErrors z, IMqttClientOptions o) =>
                        {

                            Console.WriteLine("Certificate--> issuer: " + x.Issuer + " subject: " + x.Subject);
                            return true;

                        }
                    })
                    .Build()
            )
        .Build();

        mqttClient = new MqttFactory().CreateManagedMqttClient();
        bool status = false;
        await mqttClient.StartAsync(options);

         mqttClient.ConnectingFailedHandler = new ConnectingFailedHandlerDelegate((ManagedProcessFailedEventArgs err)=>{
            Console.WriteLine("Error connecting to broker");
            Console.WriteLine(err.Exception.Message);
        });`

not sure if it helps, but I found that @networkfusion 's example works on Linux (using Docker) if I exclude the RootCA and set IgnoreCertificateRevocationErrors = false . Obviously you have to set the private cert and key as "Content" so that the docker image has them (probably a better way). I am guessing that it would be possible to to add the rootCA to the Linux key store so that it works as expected, but I haven't found a way yet...

I have a similar problem.
When I use the not secured port (1883) all is working.
But once I want to communicate securely with my MQTT broker, the exchange of certificates between the broker and the client seems working good. For checking the exchange, I used a simple SslStream with the AuthenticateAsClient method, and it works with it.
However, by looking the trace logs, the MqttClient does not receive the "MqttConnAckPacket".
[2020-04-16T21:33:03.1320857Z] [1] [MqttClient] [Verbose]: Trying to connect with server 'broker:8883' (Timeout=00:00:10).
[2020-04-16T21:33:03.4522625Z] [7] [MqttClient] [Verbose]: Connection with server established.
[2020-04-16T21:33:03.4629036Z] [6] [MqttClient] [Verbose]: Start receiving packets.
[2020-04-16T21:33:03.5292792Z] [7] [MqttChannelAdapter] [Verbose]: TX (54 bytes) >>> Connect: [ClientId=Client2] [Username=XXXX] [Password=XXXX] [KeepAlivePeriod=15] [CleanSession=True]
[2020-04-16T21:33:06.4047882Z] [7] [MqttClient] [Verbose]: Disconnecting [Timeout=00:00:10]
[2020-04-16T21:33:06.4072681Z] [7] [MqttClient] [Verbose]: Disconnected from adapter.
[2020-04-16T21:33:06.4092282Z] [7] [MqttClient] [Info]: Disconnected.
[2020-04-16T21:33:06.4098719Z] [7] [MqttClient] [Verbose]: Stopped receiving packets.
### DISCONNECTED FROM SERVER ###
[2020-04-16T21:33:13.5392273Z] [6] [MqttClient] [Warning]: Timeout while waiting for packet of type 'MqttConnAckPacket'.
[2020-04-16T21:33:13.5415796Z] [6] [MqttClient] [Error]: Error while connecting with server.
MQTTnet.Exceptions.MqttCommunicationTimedOutException: Exception of type 'MQTTnet.Exceptions.MqttCommunicationTimedOutException' was thrown.
   at MQTTnet.PacketDispatcher.MqttPacketAwaiter`1.WaitOneAsync(TimeSpan timeout)
   at MQTTnet.Client.MqttClient.SendAndReceiveAsync[TResponsePacket](MqttBasePacket requestPacket, CancellationToken cancellationToken)
   at MQTTnet.Client.MqttClient.AuthenticateAsync(IMqttChannelAdapter channelAdapter, MqttApplicationMessage willApplicationMessage, CancellationToken cancellationToken)
   at MQTTnet.Client.MqttClient.ConnectAsync(IMqttClientOptions options, CancellationToken cancellationToken)
### CONNECTING FAILED ###

IMqttFactory factory = new MqttFactory();
IMqttClient mqttClient = factory.CreateMqttClient();

MqttClientTlsOptions tlsOptions = new MqttClientTlsOptions
{
    UseTls = true,
    AllowUntrustedCertificates = true,
    IgnoreCertificateChainErrors = true,
    IgnoreCertificateRevocationErrors = true,
    SslProtocol = SslProtocols.Tls12
};

IMqttClientOptions options = new MqttClientOptionsBuilder()
    .WithClientId("Client2")
    .WithTcpServer(tcpOptions =>
    {
        tcpOptions.Server = "broker";
        tcpOptions.Port = 8883;
        tcpOptions.TlsOptions = tlsOptions;
    })
    .WithCredentials("XXXX", "XXXX")
    .WithCleanSession()
    .Build();

await mqttClient.ConnectAsync(options, CancellationToken.None);

It cannot solve the problem, under docker aspnet:3.0-alpine
Windows is fine, but Linux reports errors. SSL Handshake failed with OpenSSL error - SSL_ERROR_SSL.

在docker aspnet：3.0-alpine下无法解决问题
Windows很好，但是Linux报告错误。 SSL Handshake failed with OpenSSL error - SSL_ERROR_SSL.

已解决，两种方案实现TLS连接：
1、通过WebSocket
var mqttClientOptions = new MqttClientOptionsBuilder()
             .WithClientId(clientID)
             .WithWebSocketServer("broker.hivemq.com:443/mqtt")
             .WithCredentials(userName, password)
             .WithTls();

2、只需要导入client.pfx，不需要ca.crt
var clientCert = new X509Certificate2(AppConfig.MqttPfxFile);
var mqttClient = new MqttFactory().CreateManagedMqttClient();
var mqttClientOptions = new MqttClientOptionsBuilder()
             .WithClientId(clientID)
             .WithTcpServer(address, port)
             .WithCredentials(userName, password)
             .WithTls(new MqttClientOptionsBuilderTlsParameters()
             {
                 UseTls = true,
                 SslProtocol = System.Security.Authentication.SslProtocols.Tls12,
                 CertificateValidationHandler = (o) =>
                 {
                     return true;
                 },
                 Certificates = new []{
                     clientCert,
                 }
             });

生成pfx：openssl pkcs12 -export -in client.crt -inkey client.key -out client.pfx

I'm trying to replicate "self signed certificates in keystores" in MQTT.fx.  What would the TLS configuration look like to replicate the configuration below, ideally fully programmatically?

I still get this issue in .NET 6...
Adding CA Certificate and Client certificate to the Certstore does not fix it.
Anyone else having this Problem?

在docker aspnet：3.0-alpine下无法解决问题
Windows很好，但是Linux报告错误。 SSL Handshake failed with OpenSSL error - SSL_ERROR_SSL.

已解决，两种方案实现TLS连接：
1、通过WebSocket
var mqttClientOptions = new MqttClientOptionsBuilder()
             .WithClientId(clientID)
             .WithWebSocketServer("broker.hivemq.com:443/mqtt")
             .WithCredentials(userName, password)
             .WithTls();

2、只需要导入client.pfx，不需要ca.crt
var clientCert = new X509Certificate2(AppConfig.MqttPfxFile);
var mqttClient = new MqttFactory().CreateManagedMqttClient();
var mqttClientOptions = new MqttClientOptionsBuilder()
             .WithClientId(clientID)
             .WithTcpServer(address, port)
             .WithCredentials(userName, password)
             .WithTls(new MqttClientOptionsBuilderTlsParameters()
             {
                 UseTls = true,
                 SslProtocol = System.Security.Authentication.SslProtocols.Tls12,
                 CertificateValidationHandler = (o) =>
                 {
                     return true;
                 },
                 Certificates = new []{
                     clientCert,
                 }
             });

生成pfx：openssl pkcs12 -export -in client.crt -inkey client.key -out client.pfx

Your solution works fine! Thanks for saving me another 2 hours of headaches!


Make it work with Turbolinks

I know there has been some discussion about this gem and Turbolinks, but I never understood the problem. This PR makes it work with Turbolinks.

I guess we should updating the readme too?

@mapreal19 you meaning removing the "Turbolinks NOT supported" section. Yes, I totally forgot. Will do.

@haffla yeah 👍

Thanks @haffla - this is exactly what I've been looking for. 🎉
Is there anything preventing the merge and a version bump of this gem?

Hey guys, sorry for taking so long :)
Actually adding support for Turbolinks wouldn't break anything, because around two years ago we removed jQuery completely, so it also never worked with an older version of Turbolinks (jquery-turbolinks listens for jquery's ready event)
I will also clean up the code a little bit later (not sure why I added the load event in the first place)
Tnx @haffla !


[YOM-550] we might need to think about another way to do on save trigger

The current way is not very robust. The on save of different plugins might crash.
Things to consider
we might to need have callback manager to handle onSave callback
From SyncLinear.com | YOM-550

I created a custom save plugin


Vertical Scroll bar gone from table properties

Description
dbeaver-ce 24.1.0 - linux debian-12.5.0-amd64 - sddm/lxqt - Long term dbeaver-ce user - Vertical Scroll bar gone from Table Editor! Need Help!
Not sure what happened; Fresh install of debian-12.5.0-amd64; I've been using dbeaver-ce for well over a year now and recommend it to all I come in contact with on the internet in terms of database programming and what's in my open source toolkit.
I tried to install old versions found on old drives; no go. All the settings remained also when trying older versions. I am unsure how to reset everything to zero with configurations as a remedy to verify if it's a configuration of some sort that I most certainly did not change myself.

Thanks!
Best Regards,
Brandon Kastning! :)
DBeaver Version
Community Edition 24.1.0
Operating System
Linux debian-12.5.0-amd64
Database and driver
MariaDB 11.3.2 (Latest) & 3.3.2 on the Driver!
Steps to reproduce

I create a New Table
I start to fill out the Requirements of the Table after Adding a new Column
And my Vertical Scroll Bar is gone; for instance, trying to add Primary Key (Can't scroll down like i've always been able to in the past).

Additional context
No response

On the right side of the Table Properties Window.
On Wed, Jun 12, 2024, 4:31 AM Elizabeth @.***> wrote:

Could you explain or show, where do you expect to see vertical scrollbar?
—
Reply to this email directly, view it on GitHub
https://github.com/dbeaver/dbeaver/issues/34323#issuecomment-2162778104,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABT5XG7EC3EIZCP2KZVUT2LZHAWQ7AVCNFSM6AAAAABJDFTEX6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNRSG43TQMJQGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

As a workaround, you can move the blue line or click on a blue arrows to enlarge that area

E1izabeth; Thanks for the replies. I somehow was able to get a popup dialog which seems to remedy the Lack of ability to show in a low resolution display w/ monitor:  1600x1200 / 1600x900.
I couldn't always get it to pop-up, though. I'll keep this for future reference.

We want to improve this panel, at least add a scrollbar. It should be fine after scaling and on low-resolution


fix: Add dispatcher to easily handle concurrent work

:tada: This PR is included in version 1.0.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Split persistence documentation

Split persistence documentation
Added persistent fsm documentation
Added custom serialization documentation
Updated Event Adapters documentation

Great work! LGTM :+1:
cc @akkadotnet/developers

Yup. Very nice. Makes the persistence docs easier to find.


Indentation of headings in remarks

Remarks contain Asciidoctor headings; e.g.
== General

The subject of the *action_schema* is the description of actions,
the reasons for these actions, and the status of these actions.

Lutaml inserts those remarks as is, but they will almost always be inside clauses or subclauses of a document; e.g. in annotated-express,
[lutaml, ../../../resources/action_schema/action_schema.exp, repo]
---
{% for schema in repo.schemas %}
=== {{ schema.id }}

[source]
--
{{ schema.sourcecode }}
--

{{ schema.remarks }}

But that means that any heading within schema.remarks needs to be indented as at least ====:

Schemas
1.1 action_schema
1.1.1 General

In the example above, == General must be converted to ==== General. If we do not manipulate the indentation of headers, General gets added in instead as a top level clause (as it is in the source remark): "2. General"
This is an issue for asciidoctor includes, and it is addressed there with the leveloffset parameter: https://docs.asciidoctor.org/asciidoc/latest/directives/include-with-leveloffset/
So include::chapter01.adoc[leveloffset=+1] means insert the text of chapter01.adoc into the current document, but add one = to any heading in the text. (Headings are identified as \n=+ .)  include::chapter01.adoc[leveloffset=-1] means insert the text of chapter01.adoc into the current document, but remove one = from any heading in the text.
We require the same to be done with lutaml remarks. If leveloffset is present as an argument to the Lutaml macro, then we want that number of equal signs added or subtracted from any headings in any asciidoctor (remarks) imported.
So in annotated-express,  we will want lutaml invoked as:
[lutaml, ../../../resources/action_schema/action_schema.exp, repo, leveloffset=+2]
for the headings in the remarks to be nested correctly.

But that means that any heading within schema.remarks needs to be indented as at least ====:

@opoudjis what does that mean?

But that means that any heading within schema.remarks needs to be indented as at least ====:

@opoudjis what does that mean?

It's the indentation of imported headings to match their context: an h1 heading imported into a subclause has to be converted into an h3 heading.

It's the indentation of imported headings to match their context: an h1 heading imported into a subclause has to be converted into an h3 heading.

This has been done successfully, closing.

This has been done successfully, closing.


The SQL model cannot perform insertion into another table using queried data

Privileged issue

[X] I'm @tiangolo or he asked me directly to create an issue here.

Issue Content
engine = create_engine(str(settings.MYSQL_DATABASE_URL))
rds_engine = create_engine(str(settings.RDS_DATABASE_URI), echo=True)
def insert_main():
product_datas = get_online_products()
with Session(rds_engine) as session:
session.add_all(product_datas)
session.commit()
After execution：
PS D:\python\db_visualization> D:\python\myvenv\Scripts\python.exe "d:\python\db_visualization\back_main.py"
There is no response in the table after execution

I forget if this is the case with plain SQLAlchemy -- if so, you may have to expunge() them (or all with expunge_all()) from the current session before adding it to a different one...?

我忘记了普通 SQLAlchemy 是否就是这种情况——如果是这样，您可能必须从当前会话中expunge()删除它们（或全部expunge_all()），然后再将它们添加到另一个会话中……？

I solved this problem by using mapping to insert data instead. Thank you


Unclosed file object

Noticed with sarpy 1.3.30 that the sicd_writer is throwing a warning:
/usr/local/lib/python3.10/site-packages/sarpy/io/general/nitf.py:4168: ResourceWarning: unclosed file <_io.BufferedWriter name=

It looks like a file object is not being close properly and python is unhappy.  Based on the this code, it might not be triggering the __del__ operator that closes the file object, link.
The following code removed the warning for me. I had to explicitly call flush though.
  writer = sicd.SICDWriter(
      file_object=filename,
      sicd_meta=SICDType(**sicd_data.__dict__),
      check_existence=False
  )

  writer.write(complex_image, (0, 0))
  writer.flush()
  writer._file_object.close()
  writer.close()

If I'm incorrectly writing a sicd_file or closing, please advise.
Thanks !

Did you not run into this problem before with earlier versions of SARPY?

I have not.

@RyanTerb, thanks for writing this up. This does seem to be a bug in the NITFWriter introduced in the 1.3.30 refactor and is also an issue with the CPHDWriter. This should be addressed in #476.

Included in version 1.3.59


Support HEAD requests without Docker-Content-Digest header

A statically hosted registry that responds correctly to GET with a manifest will load the right digest (by looking at the manifest body and calculating the digest). If the registry returns a HEAD without
Docker-Content-Digest, then the client Tags().Get() call will return an empty digest.
This commit changes the client to fallback to loading the tag via GET if the Docker-Content-Digest header is not set.
This allows a static S3 bucket to serve as a registry for the distribution registry client (since S3 cannot set Docker-Content-Digest, but it can serve the manifest correctly). The daemon is able to pull successfully as well.

Please sign your commits following these rules:
https://github.com/moby/moby/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "client_retry" git@github.com:smarterclayton/distribution.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.

LGTM
We may need to be careful here though, this change makes sense but I am wondering if we should reflect this in the specification
https://docs.docker.com/registry/spec/api/#manifest

I can open a proposed PR to the spec to say the server SHOULD return a Docker-Content-Digest, but that if it does not the client SHOULD read the body contents to calculate a digest.  I think this is one of the few places that a non-standard HTTP header might be required for GET operation (/v2/ is SHOULD for Docker-Distribution-API-Version, various other places are mostly write affected).


 This is going to require actually tracking that, of course. Save backups go on a different storage key.

Decided not to do this for now. Maybe later.


.id names not showing up in identity list

My first several accounts should have ids associated with them.  account 1 should show 'dantrevino.id'.

@markmhx I'd like your help here since you know better why are are not supporting old .id names and what are the plans

Is this a regression or a feature request?

This seems to be a regression in that .id. names were loading last time I checked, but now I don't see them in my wallet either.
I looked up dantrevino.id here and it shows a different address oddly: https://stacks-node-api.mainnet.stacks.co/v1/names/dantrevino.id

Note this result's address ends in 9XRP and @dantrevino's screenshot's "Account 1" ends in 9WZS.
The 9XRP address also doesn't show up in the explorer: https://explorer.stacks.co/txid/SP1CQSE0KEWRXWQ34W2Y94H8407T2DRY3DMSA9XRP?chain=mainnet
@kyranjamie does the wallet use this endpoint to display usernames for accounts in this list, and if so, could this be an API-side issue with matching addresses to names?

Seeing this issue, I do wonder if it's introduced by some of the changes in one of these PRs that fixes/refactors the slow render perf https://github.com/hirosystems/stacks-wallet-web/pull/2145, https://github.com/hirosystems/stacks-wallet-web/pull/2083, https://github.com/hirosystems/stacks-wallet-web/pull/2078
We use the addresses endpoint:
https://stacks-node-api.stacks.co/v1/addresses/stacks/SP1CQSE0KEWRXWQ34W2Y94H8407T2DRY3DMSA9XRP
On our test address, it does seem to pull in id names

That API also shows the mapping between dantrevino.id and 9XRP, which appears incongruent with the address in his screenshot: https://stacks-node-api.stacks.co/v1/addresses/stacks/SP1CQSE0KEWRXWQ34W2Y94H8407T2DRY3DMSA9XRP

From @0xAsteria in Discord

All of this is in the hiro wallet, which, afaik, only uses the hiro api, which does import names.  The apps I've tested are also using hiro api.

Hi Mark, i was just checking via https://stacks-node-api.mainnet.stacks.co/v1/names/ the first .id (first address) from my old blockstack wallet and it has another address than the first Account that i get to see when login in to the new stacks wallet. Same with Account 2 etc.… So my old names don't seem to be connected to my old seedphrase or am i wrong here? Just wanted to make you aware for solving this problem. Have a nice sunday!

@zone117x @saralab any insight on whether a recent API change may have affected name/address mapping here?

Note that this is labeled P3 currently, though I'm tempted to upgrade it to P2 since it's near-critical for users to recognize their accounts upon selection. A significant number of power users (those with many accounts and registered usernames) may not be able to do so effectively at the moment given this bug.


Feature/137 listings

front end work for the news, lab, fund, project and person listing pages

The lsiting pages look pretty similar to me. I would prefer to see the listing pages sharing a base template with a couple of blocks for where they differ.

Created a listing index page template, which fund, lab and project index pages now all extend from - https://github.com/OpenTechFund/opentech.fund/pull/82/commits/1fd199a78eda54df5824fab77475e504d8d7bab0

@todd-dembrey - can you review https://github.com/OpenTechFund/opentech.fund/pull/82/commits/22925bf84f39af81e8820fb899fb895987707105 please


Add dtype= parameter to da.random.randint

Fixes https://github.com/dask/dask/issues/4579
Supercedes https://github.com/dask/dask/pull/4607
Also checked to see if there were any other cases of dtype being
supported with
import numpy

for func in dir(np.random):
    if 'dtype=' in (getattr(np.random, func).__doc__ or ''):
        print(func)

[ ] Tests added / passed
[ ] Passes flake8 dask

LGTM.


add support for webmin

add support for webmin

Just FYI github actions are UTC timestamp and marshaltime in enrich will unmarshal EPOCH to your timezone so you need to run cscli hubtest with these set
sudo TZ=UTC cscli hubtest <your_test>

how would that work on

Just FYI github actions are UTC timestamp and marshaltime in enrich will unmarshal EPOCH to your timezone so you need to run cscli hubtest with these set
sudo TZ=UTC cscli hubtest <your_test>

Sorry if I'm being pushy but could this please be merged?


Nearest Earth Objects Classification and Prediction

ML-Crate Repository (Proposing new issue)
:red_circle: Project Title : Nearest Earth Objects Classification and Prediction
:red_circle: Aim : Classify and predict the nearest earth objects from the NASA.
:red_circle: Dataset : https://www.kaggle.com/datasets/sameepvani/nasa-nearest-earth-objects
:red_circle: Approach : Try to use 3-4 algorithms to implement the models and compare all the algorithms to find out the best fitted algorithm for the model by checking the accuracy scores. Also do not forget to do a exploratory data analysis before creating any model.

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.
This issue is only for 'SWOC' and 'JWOC' contributors of 'ML-Crate' project.

:white_check_mark: To be Mentioned while taking the issue :

Full name :
GitHub Profile Link :
Participant ID (If not, then put NA) :
Approach for this Project :
What is your participant role? (Mention the Open Source Program name. Eg. HRSoC, GSSoC, GSOC etc.)

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

@abhisheks008 the two csvs in this dataset link are same. So should we work on any one of them?

Full name : NIRVIK GHOSH
GitHub Profile Link : @Nirvik07
Participant ID (If not, then put NA) : NA
Approach for this Project : To classify and predict the nearest earth objects from the NASA.
What is your participant role?  HRSoC 2022 Participants.

Use any of them, issue assigned to you @Nirvik07


ERR WhatsAppManager start() whatsapp.initialize() rejection: Error: Could not find expected browser (chrome) locally

I implement below actions, but met above error:

git clone docker-getting-started.git
cd docker-getting-started
bin/docker-run-typescript.sh

met below error, please help me to resolve it.

Starting Docker Container for Wechaty v1.20.2 with Node.js v16.20.1 ...
Working directory: /bot
Executing node --loader=ts-node/esm src/typescript.ts
08:36:02 ERR WhatsAppManager start() whatsapp.initialize() rejection: Error: Could not find expected browser (chrome) locally. Run npm install to download the correct Chromium revision (982053).
08:36:17 WARN WechatyPuppetMixin start() starting puppet ... timeout
08:36:17 WARN WechatyPuppetMixin start() puppet info: Puppet(typescript)
08:36:17 WARN Manager asystole count: 1
08:36:32 WARN Manager asystole count: 2
08:36:47 WARN Manager asystole count: 3

I have installed Docker and activated a global VPN.


"Position Independent Executable" when uploading to iTC

When I'm trying to upload my app to iTunes Connect, I retrieve the following warning:

As a workaround, this made an upload possible:
http://stackoverflow.com/questions/30547283/submit-to-app-store-issues

Oh that's weird. I tried uploading before, but didn't have those issues.
Thanks for reporting!

@marbetschar
I just tried uploading again recently and this error did not occur. Here is a checklist I came up with.

Do you have carthage copy-frameworks Build Phase setup ?
Is carthage up to date ?
Did you change any "Hoge Paths" in Build Settings ?
Make sure ONLY_ACTIVE_ARCH = YES in your project's Release target.

This issue also could be related. TARGETED_DEVICE_FAMILY.
https://github.com/Carthage/Carthage/issues/873


Add student government promotional photo to About page

@meghankarbarz I have this written down as one of @techguy4u's ideas. So, I'm assigning this to you to get information about if we want to do this.

From discussion on 9/9 we talked about maybe having a photo collage at the top of the about page?

This has been released

This has been released


adds support for loading yara rules from the Karton S3 storage

In some situations it can be helpful to load Yara rules from the Karton S3 storage instead of mapping a volume to the docker container (for example if you deploy the Karton ecosystem on OpenShift).
Maybe my solution has room for improvement:-)
What do you think?

Hi,
thank you for your contribution and sorry for the late response!
After some internal discussion, we've decided that implementing this would be out of scope of this project.
Why do you require such feature? Do you have any usecase for this?
You've mentioned OpenShift which suggests that you should be able build a container image
bundled with YARA rules. To me, this sounds like the most natural way for running yaramatcher.
Doing this would simplify deployment (no requirement for mounting a volume) and ensure
reproducible behavior (no dependency on external storage).

Yes one solution is, to build the image for karton-yaramatcher in our environment and copy the yara files into it and use this image for deployment for example on OpenShift. But for this, the repository of karton-yaramatcher needs to be in our git-repo and we slightly have to modify it (Dockerfile, yara files). That works fine, but as you provide an image via DockerHub, it would be simpler to directly pull this image, run a container from it and instruct the container to get the yara files from the Karton S3 storage.


Use EnergySwitch with suppressLog to fix the issue without spamming the game log

Depends on https://github.com/axpendix/tcgone/pull/96

 Galarian Sirfetch'd V SWSH43


Is there any way in using electron.app from react?

I would like to use app.getPath('userData') from react. Is there any way to do it? Simply importing it, doesnt work.

Because app is only work in main process, in renderer process use require('electron').remote.app.getPath('userData') instead.

Thanks for the tips from @jhen0409. @szebrowski Official docs will help you further -https://github.com/electron/electron/blob/master/docs/api/remote.md

thanks for the help :)


Add DownstreamHttpVersion property for Http/2 WebServer

New Feature
Refer to #1124 proposal.
We add DownstreamHttpVersion property on ReRoute for edit Http Version.
@TomPallister we need support for Unit Testing.
I tried this feature on my machine, but we need to insert correct testing.

@TomPallister after merge, we need to update Ocelot docs.
Must add Key "DownstreamHttpVersion" to downstream section.
Please merge this feature 😊

I’m working to merge this PR


Use API to check if something requires elevation instead of try/catch

Dev Home version
No response
Windows build number
No response
Other software
No response
Steps to reproduce the bug
TODO found at DevHome.SetupFlow.WinGetPackage.cs
Expected result
No response
Actual result
No response
Included System Information
No response
Included Extensions Information
No response

This was originally suggested for the OOP calls to WinGet. However, as naturally all OOP COM calls need to be try/catch-ed for RPC errors, checking for the version is nice to have but not necessary as of today's requirements. I will close this issue and if necessary, in the future, I will re-activate it.


[caps] enable MTL win support

@uartie  @feiwan1   do some test on MTL windows . please help a review.


Add a test case for CloudStack list_nodes with location filter

Follow up of the PR #737 (Added location filter in list_nodes of CloudStack)
Description
This PR adds a test case for the PR #737
Status

done, ready for review

Checklist (tick everything that applies)

[x] Code linting (required, can be done after the PR checks)
[ ] Documentation
[x] Tests
[ ] ICLA (required for bigger changes)

Merged into trunk, thanks.


Using neo-python as a library

I attempted to install neo from pip to use it as a library.  However it seems to only pull in the files in the neo folder and none of its subfolders.  I'm new to Python so I'm not sure if this is intentional or not.  Am I supposed to fork this entire codebase if I want to run custom code like it shows in the examples?
Contents of my site-packages/neo
total 56K
drwxr-xr-x   3 dax 4.0K Feb 13 15:55 .
drwxr-xr-x 127 dax  12K Feb 13 15:55 ..
drwxr-xr-x   2 dax 4.0K Feb 13 15:55 __pycache__
-rw-r--r--   1 dax 2.5K Jan 24 08:16 BigInteger.py
-rw-r--r--   1 dax  665 Jan 24 08:16 Blockchain.py
-rw-r--r--   1 dax 3.7K Jan 24 08:16 EventHub.py
-rw-r--r--   1 dax   22 Jan 24 08:16 __init__.py
-rw-r--r--   1 dax 5.5K Jan 24 08:16 Settings.py
-rw-r--r--   1 dax 2.0K Jan 24 08:16 test_preferences.py
-rw-r--r--   1 dax 1.2K Jan 24 08:16 test_settings.py
-rw-r--r--   1 dax 2.3K Jan 24 08:16 UserPreferences.py

Yeah, for now you need to simply clone the repository, and setup the venv as described in the README.

Is there a plan to be able to use it as a library?

yes, it's on the radar, and will come at some point. it's not a priority though.


License

Hello there. Your program looks pretty good. However, no one is able to legally make their own modifications and share them without you stating a license.
Solution:
Make a new file called "LICENSE" in the repo. GitHub provides a templates button when you enter the editor for that. I'd recommend the MIT license for what you are doing here, but any open source license works.

Thanks for pointing that out! Now done.

and closed.


Didn't figure out how to use it

hello
Am trying to figure out how to use your Lunda decryptor but I can't find any guides or How to use anywhere.
Can you please help me.
I used to have a premium Lynda account and used the offline desktop app to download my courses.
now my account is closed and I can't access these courses i found the folder that contains them on my desktop and i need to be able to review them without the need to use any Lynda account.
thank you

Hello @moalmalik,
you can use this program by just download it.
Now you have to open a console window by pressing windows + r and cmd
Navigate to the folder where the program is located.
After that you have to type LyndaDecryptor /D [DirectoryWhereYourLyndaFilesAre] and replace the part "DirectoryWhereYourLyndaFilesAre" with the directory containing your lynda files.
hope this would help you using the decryptor

I tried the same but I am not able to decrypt it.
Output:
C:\Users\cheel\Downloads>LyndaDecryptor.exe /D "F:\lynda\502656"
[ARGS] Changing mode to Folder decryption!
[START] Init Decryptor...
[START] Decryptor successful initalized!
Decryption completed!
Press any key to exit the program...

same thing happen with me like sathvikcheela
C:\Users\USERNAME\Desktop\Lynda_v1.2>LyndaDecryptor /D "C:\Users\USERNAME\AppData\Local\Packages\lynda.com.lynda.com_0dmhem0sv94sr\LocalState\offline\521231" /DB "C:\Users\USERNAME\AppData\Local\Packages\lynda.com.lynda.com_0dmhem0sv94sr\LocalState\db.sqlite" /OUT "E:\OUTPUT_PATH"
[ARGS] Changing mode to Folder decryption!
[START] Init Decryptor...
[START] Decryptor successful initalized!
[DB] Creating db connection...
[DB] DB successfully connected and opened!
Decryption completed!
Press any key to exit the program...

@Vijaysinh13 Try reading other issues I believe it was fixed there, esp the ones with a lot of interaction

Thanks working perfectly. Very fast also.

Hi @h4ck-rOOt
Thanks for making this available.  I read you reply to @moalmalik but I'm still really confused.  I'm on a Mac.  I have the files on my computer here: /Users/[MY HOMEFOLDER]/repo/Lynda-Decryptor
I open a terminal session, and type cd /Users/MY HOMEFOLDER/repo/Lynda-Decryptor and hit enter.  In the next line I enter LyndaDecryptor /D /Users/MY HOMEFOLDER/Desktop/lyndafiles and I get the response: -bash: LyndaDecryptor: command not found
So haven't made any progress at all!  Would appreciate any help on this.
Many thanks

@bubbabr Mac isn't supported currently (afaik); see #14 . Obviously it doesn't work because you don't have an executable that can run on Mac.. You have to compile it first...

Thanks @Dev-iL.   I don't suppose you would walk me through the steps in a bit more detail?
I went in the Terminal in Windows to my LyndaDecryptor folder: cd C:\Users\Charlie\Desktop\332\Lynda-Decryptor
Then on the new Terminal line I entered: LyndaDecryptor /D C:\Users\Charlie\Desktop\Lynda\Omnifocus ios\Encrypted\386384
But I still get: 'LyndaDecryptor' is not recognized as an internal or external command, operable program or batch file
I'm completely new to this so I'm sure there's lots of steps I haven't done and should have.  I've tried searching for various guides on how to get started with GitHub, but haven't understood much.  Grateful for any help!

@bubbabr GitHub is pretty much just a place for storing files and discussing changes to them.
It sounds like you're still trying to run the decryptor without having an executable available. Make sure you download one of the .zip files from the releases page or this comment so that you have an executable (.exe) in the active folder... Then the command should work.

Many thanks @Dev-iL, got it working now!  Really appreciate your help.
I noticed also that the readme file's been expanded recently and that it now gives usage guidance and lists different commands.  Now that I know you need an exe to run the program (ah, small victories!), I have another question related to GitHub projects with a view to exploring them more in the future.
Assuming there are no usage notes available, is there a certain place to look within the files where the commands for each program can be found?  For example, in the case of this program, is there somewhere where it lists the LyndaDecryptor /D command within the code and explains what it does?  Or is it listed and you're expected to use your programming knowledge to understand its function?
One final thing I'm wondering about is how you compile and recompile - do these terms refer to generating an executable out of the bare bones of code?  And is it right that you may need different software to compile code depending on what programming language its written in?
Thanks a lot

Thanks to @Dev-iL for giving some sort of support and answering questions.
@bubbabr The usual way to get those infos is running a program without parameters... most of the command line programs for windows, linux and mac will show usage info, if you do so. It's an known standard within the developer community to do so.
At the easiest explaination level, compiling is the process of taking code as an input via a compiler, produces platform dependend objects (linking them to os functions like open a file) and producing an executable. In C# there is a little difference you can see here:

First of all, the compiler takes code as an input, produces il-code which refers to the msil (microsoft intermediate language). The output will always be a .exe or .dll. On Windows you could just double click  and run it, or call it from the console. Every OS need a virtual machine (CLR) to run MSIL-compiled-code (for mac this is delivered with mono or dotnetcore). The vm is obviously not a compiler, it is an interpreter for IL-Code (sometimes referred as recompiler, just-in-time-compiler, ...).
It is NOT language dependent, nor does it dependent on which tool you are using to compile this code. It depends on which platform you are using and having some sort of runtime installed to execute thos programs.
So if you need further information on this topic, feel free to read this Wiki (CIL) or Wiki (C#)
I hope this will clarify the situation and helps you to understand whats going on behind the scene.

Thanks @h4ck-rOOt for the info, will do some further reading.  Much appreciated!

Hey there,
I am completely new to basically everything here. I have a premium account of Lynda and all, but I need a converted course for a offline computer. So basically, I downloaded the .zip file, and I ran the LyndaDecryptor.exe (as admin just in case), and opened up the cmd (winkey + r) and I get the error "bubbabr" got before

Now I am pretty sure the file I downloaded is indeed compiled so I don't think I need to compile it.
I am pretty sure I am doing a lot of things wrong, can you guide a lost man back to reality here?
Thanks in advanced to all!

From one novice to another @IronAsaf did you make sure you first navigated in the command prompt to the folder where LyndaDecryptor.exe is located? i.e. in the command prompt window, you need to enter: cd [path to folder where LyndaDecryptor.exe is]
and then enter /D [folder with Lynda videos]

@bubbabr Ok so I did not do that, now that I tried it I got a different problem -
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.
C:\Users\Asaf_MSI>cd C:\Users\Asaf_MSI\Downloads\LyndaDecryptor
C:\Users\Asaf_MSI\Downloads\LyndaDecryptor>/F C:\Users\Asaf_MSI\Desktop\Works an
d Projects\Videos\Lynda Decrypter
'/F' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\Asaf_MSI\Downloads\LyndaDecryptor>LyndaDecryptor /F C:\Users\Asaf_MSI\D
esktop\Works and Projects\Videos\Lynda Decrypter
[START] Error occured: Input file is missing or not specified!
Usage (Directory):   LyndaDecryptor /D PATH_TO_FOLDER [OPTIONS]
Usage (File): LyndaDecryptor /F ENCRYPTED_FILE   DECRYPTED_FILE [OPTIONS]
Flags:
/D      Source files are located in a folder.
/F      Source and Destination file are specified.
/DB [PATH]      Search for Database or specify the location on your syst
em.
/RM     Removes all files after decryption is complete.
/OUT [PATH]     Specifies an output directory instead of using default d
irectory.
Press any key to exit the program...
C:\Users\Asaf_MSI\Downloads\LyndaDecryptor>LyndaDecryptor /D C:\Users\Asaf_MSI\A
ppData\Local\lynda.com\Lynda.com Desktop App\offline\ldc_dl_courses\81266
**[ARGS] The directory path is missing...
[START] Error occured: Directory path is missing or specified directory was not
found!**
Usage (Directory):   LyndaDecryptor /D PATH_TO_FOLDER [OPTIONS]
Usage (File): LyndaDecryptor /F ENCRYPTED_FILE   DECRYPTED_FILE [OPTIONS]
Flags:
/D      Source files are located in a folder.
/F      Source and Destination file are specified.
/DB [PATH]      Search for Database or specify the location on your syst
em.
/RM     Removes all files after decryption is complete.
/OUT [PATH]     Specifies an output directory instead of using default d
irectory.
Press any key to exit the program...
C:\Users\Asaf_MSI\Downloads\LyndaDecryptor>LyndaDecryptor /F C:\Users\Asaf_MSI\A
ppData\Local\lynda.com\Lynda.com Desktop App\offline\ldc_dl_courses\81266 C:\Use
rs\Asaf_MSI\Desktop\Works and Projects\Videos\Lynda Decrypter
[START] Error occured: Input file is missing or not specified!
Usage (Directory):   LyndaDecryptor /D PATH_TO_FOLDER [OPTIONS]
Usage (File): LyndaDecryptor /F ENCRYPTED_FILE   DECRYPTED_FILE [OPTIONS]
Flags:
/D      Source files are located in a folder.
/F      Source and Destination file are specified.
/DB [PATH]      Search for Database or specify the location on your syst
em.
/RM     Removes all files after decryption is complete.
/OUT [PATH]     Specifies an output directory instead of using default d
irectory.
Press any key to exit the program...

OK @IronAsaf I'm not sure what exactly the problem is, but let me lay out in clearer steps what works for me (for example, I don't use the /F command).

In command prompt, enter text (without quotes): 'cd [folder with LyndaDecryptor.exe in]' and press Enter
In new command prompt line, enter text (without quotes): 'LyndaDecryptor /D [folder with Lynda videos in it]' and press Enter

At this point (for me) decryption starts and completes (with decrypted video staying in same folder as original encrypted video).  Hope that helps - if it doesn't, afraid you'll need to wait for someone else to give some advice.

@bubbabr Thanks for all the help! Now, I do still get the same thing, but I want to believe that maybe the source folder is not the one I need.
Then again it's the only place with a .lynda extension.

Thanks a lot. Worked like a charm! Really very fast!

I feel stupid, may I cry now? May I?!
So basically after a month I finally had time again to test this out again.
So my issue was that it kept saying :
:no_entry:**[ARGS] The directory path is missing...
:no_entry:[START] Error occured: Directory path is missing or specified directory was not
found!**
The reason for that is such - I did not add quotation marks around the path.
I did -
LyndaDecryptor /D [folder with Lynda videos in it]
But actually it needs to be -
LyndaDecryptor /D "folder with Lynda videos in it"
I just wanted to post this for all those poor bastards in the future that ended up like me ;)

I tried the same but I am not able to decrypt it.

Thanks for Sharing!! It's working fine !!

I use Allavsoft to download Lynda videos offline to mp4 or mp3.
It still works.

Contact me on telegram
my id: t.me/pyc0der
i'll tell you how to download lynda or udemy courses


feat: added state_class: measurement to appropriate sensors

There are several sensor types that do not currently report a property of "state_class": "measurement" which means home-assistant does not have the ability to show them in a statistics graph. This causes issues for certain types of UI cards as they are unable to display any data.
Documentation for the values is here:
https://developers.home-assistant.io/docs/core/entity/sensor/#available-state-classes
I have run yarn test and yarn lint successfully. I have also updated the matching test.
Additionally when trying to run yarn pkg I ran into two issues.

egrep deprecation (migrated to grep -E per: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/grep.html)
arch command binary not available (migrated to uname -m per: https://linux.die.net/man/1/arch)

Testable container image is available here: btreecat/zwave-js-ui-dev:feat-add-state-classes

I was able to successfully test the built container on my home-lab k8s instance. Looks good from my side :smile:
Thank you for this awesome project and making it so easy to contribute.


Improve makefile to improve local setup

Makefile has some commands as of now but it can improved to prevent running multiple commands to setup and run project project locally. Improvements should be done such that one or two command should be able to install all deps, build both frontend backend, and run both frontend and backend without docker. Something like make frontend and make backend  would work.

hello @DevilsAutumn  can you assign me on this?

Done @SureshPradhana , thanks for picking up this.

@DevilsAutumn Does this need to connect to and run all backend services similar to Docker?

@DevilsAutumn Does this need to connect to and run all backend services similar to Docker?

yeah, kind of.

should i use docker containers for postgres and rabbitmq

should i use docker containers for postgres and rabbitmq inside makefile

No, terminal commands should be used.

Should the Makefile be written assuming that postgres and  rabbitmq are already manually set up?

we are using sqlite instead of postgres for setup without docker. I dont think it would require some kind of check before starting the application(not sure).

I will change the Makefile to only run the backend; RabbitMQ and other services will need to be run manually.

can do something like this
# RabbitMQ commands
check-rabbitmq:
	@if ! sudo service rabbitmq-server status | grep -q "active (running)"; then \
		echo "RabbitMQ is not installed or not running. Please install and start RabbitMQ service."; \
		exit 1; \
	fi

start-rabbitmq:
	sudo service rabbitmq-server start

stop-rabbitmq:
	sudo service rabbitmq-server stop

Yes, but it may throw error for everyone who run make backend and requires to setup rabbitmq even for someone who is not working on rabbitmq

ok lets make them independent for now.

@DevilsAutumn If we don't use Docker and instead rely only on a Makefile, we have to manage it based on different OSes, each of which has different ways of starting RabbitMQ. I think it's better to start services manually or use Docker, as using a Makefile will require managing differences across various OSes.

hmm makes sense. Probably we should change this issue to improve the docs related to setting up the project on local for different OSes.

improving the docs would be very beneficial, and I believe the Makefile should only be used to run the frontend and backend. I'll make the necessary changes and commit to this pr

Perfect. Thankyou.


Remove zookeeper dependency

Xinfra monitor has recently been upgraded to version 2.8 of kafka client libraries, where adminClient does not use zookeeper dependency anymore.
This gives a great opportunity to remove all zookeeper reference/dependency from xinfra monitor.
PR is available here: https://github.com/linkedin/kafka-monitor/pull/386

@mhratson I hope you have time for a review

@chromy96 thanks for the #386.
I'll take a look ASAP…

@mhratson 👋 Given that Kafka has released KRaft mode in general availability with Kafka v3.6 removing the need for zookeeper, will this issue and PR be merged soon?

^Also would like to see this MR merged.

+1 from me, too

+1 from me too. It would be helpful.


LambdaLib

When downloading the recommended version (0.7.1 on the FTB launcher), you have to update LambdaLib manually. It has version 1.2.0 installed, but it needs 1.2.1. Its not that much of a problem, but its annoying and eazy to fix.

Confirmed, in Technic and FTB release.

Should be fixed within the next few hours on 0.7.2 release