eXpand icon indicating copy to clipboard operation
eXpand copied to clipboard

JobScheduler ChainJobs

Open apobekiaris opened this issue 4 years ago โ€ข 27 comments

A common scenarion is to be able to run a job after a job schedule. This will be addressed with Chained job which will run in parallel after a jobs schedule.

apobekiaris avatar Nov 02 '21 16:11 apobekiaris

JobScheduler ChainJobs #892

apobekiaris avatar Nov 02 '21 16:11 apobekiaris

The pre-release 4.211.10.0 in the Reactive.XAF lab branch includes commits that relate to this task:

To minimize version conflicts we recommend that you use the Xpand.XAF.Core.All, Xpand.XAF.Win.All, Xpand.XAF.Web.All packages. Doing so, all packages will be at your disposal and .NET will add a dependecy only to those packages that you actually use and not to all (see the Modules installation-registrations youtube video).

Released packages: Xpand.Extensions v.4.211.10 Xpand.Extensions.Blazor v.4.211.10 Xpand.Extensions.Mono.Cecil v.4.211.10 Xpand.Extensions.Office.Cloud v.4.211.10 Xpand.Extensions.Office.Cloud.Google.Blazor v.4.211.10 Xpand.Extensions.Reactive v.4.211.10 Xpand.Extensions.XAF v.4.211.10 Xpand.Extensions.XAF.Xpo v.4.211.10 Xpand.TestsLib v.4.211.10 Xpand.TestsLib.Blazor v.4.211.10 Xpand.TestsLib.Common v.4.211.10 Xpand.TestsLib.EasyTest v.4.211.10 Xpand.TestsLib.Net461 v.4.211.10 Xpand.VersionConverter v.4.211.10 Xpand.XAF.Core.All v.4.211.10 Xpand.XAF.Modules.AutoCommit v.4.211.10 Xpand.XAF.Modules.Blazor v.4.211.10 Xpand.XAF.Modules.CloneMemberValue v.4.211.10 Xpand.XAF.Modules.CloneModelView v.4.211.10 Xpand.XAF.Modules.GridListEditor v.4.211.10 Xpand.XAF.Modules.HideToolBar v.4.211.10 Xpand.XAF.Modules.JobScheduler.Hangfire v.4.211.10 Xpand.XAF.Modules.JobScheduler.Notification v.4.211.10 Xpand.XAF.Modules.LookupCascade v.4.211.10 Xpand.XAF.Modules.MasterDetail v.4.211.10 Xpand.XAF.Modules.ModelMapper v.4.211.10 Xpand.XAF.Modules.ModelViewInheritance v.4.211.10 Xpand.XAF.Modules.ObjectTemplate v.4.211.10 Xpand.XAF.Modules.Office.Cloud.Google v.4.211.10 Xpand.XAF.Modules.Office.Cloud.Google.Calendar v.4.211.10 Xpand.XAF.Modules.Office.Cloud.Google.Tasks v.4.211.10 Xpand.XAF.Modules.Office.Cloud.Microsoft v.4.211.10 Xpand.XAF.Modules.Office.Cloud.Microsoft.Calendar v.4.211.10 Xpand.XAF.Modules.Office.Cloud.Microsoft.Todo v.4.211.10 Xpand.XAF.Modules.Office.DocumentStyleManager v.4.211.10 Xpand.XAF.Modules.OneView v.4.211.10 Xpand.XAF.Modules.PositionInListView v.4.211.10 Xpand.XAF.Modules.ProgressBarViewItem v.4.211.10 Xpand.XAF.Modules.Reactive v.4.211.10 Xpand.XAF.Modules.Reactive.Logger v.4.211.10 Xpand.XAF.Modules.Reactive.Logger.Client.Win v.4.211.10 Xpand.XAF.Modules.Reactive.Logger.Hub v.4.211.10 Xpand.XAF.Modules.Reactive.Rest v.4.211.10 Xpand.XAF.Modules.RefreshView v.4.211.10 Xpand.XAF.Modules.SequenceGenerator v.4.211.10 Xpand.XAF.Modules.SuppressConfirmation v.4.211.10 Xpand.XAF.Modules.ViewEditMode v.4.211.10 Xpand.XAF.Modules.ViewItemValue v.4.211.10 Xpand.XAF.Modules.ViewWizard v.4.211.10 Xpand.XAF.Modules.Windows v.4.211.10 Xpand.XAF.Web.All v.4.211.10 Xpand.XAF.Win.All v.4.211.10

Please update the related Nuget packages and test if issues is addressed. These are nightly nuget packages available only from our NugetServer.

If you do not use these packages directly but through a module of the main eXpandFramework project, please wait for the bot to notify you again when integration is finished or update the related packages manually.

Thanks a lot for your contribution.

apobekiaris avatar Nov 05 '21 14:11 apobekiaris

Xpand XAF Modules JobScheduler Hangfire ChainJobs

apobekiaris avatar Nov 08 '21 18:11 apobekiaris

The pre-release 4.212.0.2 in the Reactive.XAF lab branch includes commits that relate to this task:

To minimize version conflicts we recommend that you use the Xpand.XAF.Core.All, Xpand.XAF.Win.All, Xpand.XAF.Web.All packages. Doing so, all packages will be at your disposal and .NET will add a dependecy only to those packages that you actually use and not to all (see the Modules installation-registrations youtube video).

Released packages: Xpand.Extensions v.4.212.0.2 Xpand.Extensions.Blazor v.4.212.0.2 Xpand.Extensions.Mono.Cecil v.4.212.0.2 Xpand.Extensions.Office.Cloud v.4.212.0.2 Xpand.Extensions.Office.Cloud.Google.Blazor v.4.212.0.2 Xpand.Extensions.Reactive v.4.212.0.2 Xpand.Extensions.XAF v.4.212.0.2 Xpand.Extensions.XAF.Xpo v.4.212.0.2 Xpand.TestsLib v.4.212.0.2 Xpand.TestsLib.Blazor v.4.212.0.2 Xpand.TestsLib.Common v.4.212.0.2 Xpand.TestsLib.EasyTest v.4.212.0.2 Xpand.TestsLib.Net461 v.4.212.0.2 Xpand.VersionConverter v.4.212.0.2 Xpand.XAF.Core.All v.4.212.0.2 Xpand.XAF.Modules.AutoCommit v.4.212.0.2 Xpand.XAF.Modules.Blazor v.4.212.0.2 Xpand.XAF.Modules.CloneMemberValue v.4.212.0.2 Xpand.XAF.Modules.CloneModelView v.4.212.0.2 Xpand.XAF.Modules.Email v.4.212.0.2 Xpand.XAF.Modules.GridListEditor v.4.212.0.2 Xpand.XAF.Modules.HideToolBar v.4.212.0.2 Xpand.XAF.Modules.JobScheduler.Hangfire v.4.212.0.2 Xpand.XAF.Modules.JobScheduler.Notification v.4.212.0.2 Xpand.XAF.Modules.JobScheduler.Notification.Email v.4.212.0.2 Xpand.XAF.Modules.LookupCascade v.4.212.0.2 Xpand.XAF.Modules.MasterDetail v.4.212.0.2 Xpand.XAF.Modules.ModelMapper v.4.212.0.2 Xpand.XAF.Modules.ModelViewInheritance v.4.212.0.2 Xpand.XAF.Modules.Office.Cloud.Google v.4.212.0.2 Xpand.XAF.Modules.Office.Cloud.Google.Calendar v.4.212.0.2 Xpand.XAF.Modules.Office.Cloud.Google.Tasks v.4.212.0.2 Xpand.XAF.Modules.Office.Cloud.Microsoft v.4.212.0.2 Xpand.XAF.Modules.Office.Cloud.Microsoft.Calendar v.4.212.0.2 Xpand.XAF.Modules.Office.Cloud.Microsoft.Todo v.4.212.0.2 Xpand.XAF.Modules.Office.DocumentStyleManager v.4.212.0.2 Xpand.XAF.Modules.OneView v.4.212.0.2 Xpand.XAF.Modules.PositionInListView v.4.212.0.2 Xpand.XAF.Modules.ProgressBarViewItem v.4.212.0.2 Xpand.XAF.Modules.RazorView v.4.212.0.2 Xpand.XAF.Modules.Reactive v.4.212.0.2 Xpand.XAF.Modules.Reactive.Logger v.4.212.0.2 Xpand.XAF.Modules.Reactive.Logger.Client.Win v.4.212.0.2 Xpand.XAF.Modules.Reactive.Logger.Hub v.4.212.0.2 Xpand.XAF.Modules.Reactive.Rest v.4.212.0.2 Xpand.XAF.Modules.RefreshView v.4.212.0.2 Xpand.XAF.Modules.SequenceGenerator v.4.212.0.2 Xpand.XAF.Modules.SuppressConfirmation v.4.212.0.2 Xpand.XAF.Modules.ViewEditMode v.4.212.0.2 Xpand.XAF.Modules.ViewItemValue v.4.212.0.2 Xpand.XAF.Modules.ViewWizard v.4.212.0.2 Xpand.XAF.Modules.Windows v.4.212.0.2 Xpand.XAF.Web.All v.4.212.0.2 Xpand.XAF.Win.All v.4.212.0.2

Please update the related Nuget packages and test if issues is addressed. These are nightly nuget packages available only from our NugetServer.

If you do not use these packages directly but through a module of the main eXpandFramework project, please wait for the bot to notify you again when integration is finished or update the related packages manually.

Thanks a lot for your contribution.

apobekiaris avatar Nov 12 '21 21:11 apobekiaris

Hello,

This enhancement seems to have broken backwards compatibility with previous versions since you changed the data type of the Primary Key Oid in Xpand_Job. Do you have a recommendation to help me avoid recreating all of my jobs?

Thanks,

Niels

ndamgaard avatar Dec 22 '21 13:12 ndamgaard

Vielen Dank fรผr Ihre eMail. Ich bin vom 21.12.-24.12. nicht im Bรผro und nur sporadisch per Mail oder Telefon erreichbar. Ihre Mail wird jedoch regelmรครŸig gelesen und so schnell wie mรถglich bearbeitet. Ich wรผnsche Ihnen eine schรถne Weihnachtszeit! Herzliche GrรผรŸe Thorsten Altmann opt-it Solutions GmbH Hello,

This enhancement seems to have broken backwards compatibility with previous versions since you changed the data type of the Primary Key Oid in Xpand_Job. Do you have a recommendation to help me avoid recreating all of my jobs?

Thanks,

Niels

-- Reply to this email directly or view it on GitHub: https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-999595176 You are receiving this because you are subscribed to this thread.

Message ID: @.***>

To: "eXpandFramework/eXpand" @.***>

Cc: "Subscribed" @.***>

Reply-To: "eXpandFramework/eXpand" @.***>

Toastbrotbaby avatar Dec 22 '21 13:12 Toastbrotbaby

apologies, however it is clear tp me that Guid brings more problems than it solves

as this is a new package hopefully the work needed to recreate your jobs is not much. My suggestion is you better use XAF to recreate your jobs, code or UI should be the same.

apobekiaris avatar Dec 22 '21 14:12 apobekiaris

@Toastbrotbaby please check your email asap, as you posting dublicates

apobekiaris avatar Dec 22 '21 14:12 apobekiaris

Yes, XAF creates the boiler plate stuff. But I had created a pile of jobs that now have to be re-configured. Just a lot of extra work to do if I want to stay current with XAF releases.

ndamgaard avatar Dec 22 '21 14:12 ndamgaard

Vielen Dank fรผr Ihre eMail. Ich bin vom 21.12.-24.12. nicht im Bรผro und nur sporadisch per Mail oder Telefon erreichbar. Ihre Mail wird jedoch regelmรครŸig gelesen und so schnell wie mรถglich bearbeitet. Ich wรผnsche Ihnen eine schรถne Weihnachtszeit! Herzliche GrรผรŸe Thorsten Altmann opt-it Solutions GmbH apologies, however it is clear tp me that Guid brings more problems than it solves

as this is a new package hopefully the work needed to recreate your jobs is not much. My suggestion is you better use XAF to recreate your jobs, code or UI should be the same.

-- Reply to this email directly or view it on GitHub: https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-999598380 You are receiving this because you commented.

Message ID: @.***>

To: "eXpandFramework/eXpand" @.***>

Cc: "Toast-Coder" @.***>

"Comment" ***@***.***>

Reply-To: "eXpandFramework/eXpand" @.***>

Toastbrotbaby avatar Dec 22 '21 14:12 Toastbrotbaby

@Toastbrotbaby I am blocking you for now feel free to mail me once u fixed your mails

apobekiaris avatar Dec 22 '21 14:12 apobekiaris

I feel your pain, but was a necessery evil, to make our lifes less complex later

apobekiaris avatar Dec 22 '21 14:12 apobekiaris

I do love the Hangfire Scheduler for XAF though. Thank you for making it!

ndamgaard avatar Dec 22 '21 15:12 ndamgaard

my pleasure, thnks for your support as well

apobekiaris avatar Dec 22 '21 15:12 apobekiaris

There seem to be other changes as well. Is there a document that explains the changes or a current example application that uses the latest release? It seems that my [Job] decorated classes default constructor gets called and not the constructor that uses dependency injection to initialize the BlazorApplication variable. So the BlazorApplication variable blazorApplication never gets set and my code crashes.

On Wed, Dec 22, 2021 at 9:20 AM Apostolis Bekiaris @.***> wrote:

my pleasure, thnks for your support as well

โ€” Reply to this email directly, view it on GitHub https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-999654147, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABTJ6QOQ4EKWVTHF2IK63LUSHUE7ANCNFSM5HG4ANBA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

ndamgaard avatar Dec 23 '21 12:12 ndamgaard

the wiki was updated to provide guidance

https://github.com/eXpandFramework/Reactive.XAF/tree/master/src/Modules/JobScheduler.Hangfire

apobekiaris avatar Dec 23 '21 13:12 apobekiaris

from the wiki

 [JobProvider]
 public class Import {
     public IServiceProvider Provider { get; }
     public Import() { }
     public Import(IServiceProvider provider) {
         Provider = provider;
     }

     [JobProvider("Customize-Name")]
     public async Task DailyOrders() {
         await ServiceProvider.RunWithStorageAsync(application => Observable.Using(() => application.CreateNonSecuredObjectSpace(true,true), objectSpace 
             => Observable.Range(0, 10).Do(i => {
                     var order = objectSpace.CreateObject<Order>();
                     order.OrderID = i;
                 }).Finally(objectSpace.CommitChanges)));
     }
 }

apobekiaris avatar Dec 23 '21 13:12 apobekiaris

Apostolis,

Do you have a sample application using the latest version of the Hangfire module that you could send me please. I am wasting so much time.

Thank you.

On Thu, Dec 23, 2021 at 7:33 AM Apostolis Bekiaris @.***> wrote:

the wiki was updated to provide guidance

https://github.com/eXpandFramework/Reactive.XAF/tree/master/src/Modules/JobScheduler.Hangfire

โ€” Reply to this email directly, view it on GitHub https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-1000308940, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABTJ6XPDAYIFBC4GJDDVH3USMQMLANCNFSM5HG4ANBA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

ndamgaard avatar Jan 26 '22 17:01 ndamgaard

What kind of sample? the package is on Nuget and can be installed as per wiki, there is no extra magic. it is used from the TestApplication to run the Easytests and all also consumed from the unti tests.

apobekiaris avatar Jan 29 '22 08:01 apobekiaris

Apostolis,

Thank you for the reply. Unfortunately the lack of accurate documentation is a huge problem. The Wiki is partly new and partly reflects the previous version of the module. Also the Model Editor is an extreme hassle to get working and in general the Xpand modules, while very cool, cause me to waste so many hours it's not worth using them. I decided to write my own Hangfire module in XAF and that has proven to be a good decision for me.

Regards,

Niels

On Sat, Jan 29, 2022 at 2:02 AM Apostolis Bekiaris @.***> wrote:

What kind of sample? the package is on Nuget and can be installed as per wiki, there is no extra magic. it is used from the TestApplication to run the Easytests and all also consumed from the unti tests.

โ€” Reply to this email directly, view it on GitHub https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-1024861442, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABTJ6QO3MHVPP3YZORH6ELUYONJJANCNFSM5HG4ANBA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

ndamgaard avatar Jan 29 '22 11:01 ndamgaard

I decided to write my own Hangfire module in XAF and that has proven to be a good decision for me.

fyi for me this hangfire package was a rough one, so judging the same feel free to come back at any point, and the breaking changes you suffer and are well documented in the wiki are because XAF has this new acrhitecture now and I spent end less hours to adapt to it. Anyway you know better, I just like to give the right impression.

apobekiaris avatar Jan 29 '22 11:01 apobekiaris

Don't get me wrong, I love your Hangfire module. But the last straw for me was trying to get your Module Editor working. For some reason it won't run. I have uninstalled the extension and reinstalled, over and over, and it says it's missing the .Net Framework when I try to run it. I don't want to be without the model editor. I have read through your support tickets knowledge base many times and lots of people have the same issues using Xpand as I do. Typically you tell them they are weak programmers. I have been programming since 1986 and am not an idiot, but I find Xpand super frustrating to use and an incredible time waster for me. By contrast writing my own XAF Blazor Hangfire module using reflection etc. was relatively easy and is working perfectly. And it only took me a couple of days.

I think it's important that you hear the impression of a user. An honest one.

On Sat, Jan 29, 2022 at 5:40 AM Apostolis Bekiaris @.***> wrote:

I decided to write my own Hangfire module in XAF and that has proven to be a good decision for me.

fyi for me this hangfire package was a rough one, so judging the same feel free to come back at any point, and the breaking changes you suffer and are well documented in the wiki are because XAF has this new acrhitecture now and I spent end less hours to adapt to it. Anyway you know better, I just like to give the right impression.

โ€” Reply to this email directly, view it on GitHub https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-1024894943, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABTJ6RPMLRRJZUDMN6N3H3UYPG2VANCNFSM5HG4ANBA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

ndamgaard avatar Jan 29 '22 11:01 ndamgaard

hmm you are aware I sell support shouldn't you ask for help if it costs u so much? It would be more fair than blaming this work with honest impressions.

Anyways, this a framework, opened sourced, and free that aims to spare you the time to put it together and orchestrate it, has a learning curve as everything and also paid support to get out of trouble.

So, it is fine that cannot take the hand to everybody.

apobekiaris avatar Jan 29 '22 12:01 apobekiaris

No thanks. Like I said, I made my own module.

On Sat, Jan 29, 2022 at 6:28 AM Apostolis Bekiaris @.***> wrote:

hmm you are aware I sell support shouldn't you ask for help if it costs u so much? It would be more fair than blaming this work with honest impressions.

Anyways, this a framework, opened sourced, and free that aims to spare you the time to put it together and orchestrate it, has a learning curve as everything and also paid support to get out of trouble.

So, it is fine that cannot take the hand to everybody.

โ€” Reply to this email directly, view it on GitHub https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-1024902517, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABTJ6T3FCKKHTOSIZH7NLDUYPMN3ANCNFSM5HG4ANBA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

ndamgaard avatar Jan 29 '22 12:01 ndamgaard

If you really want people to be able to use your Hangfire module I suggest you make a simple demo application demonstrating it. That would probably only take you 1/2 hour to write and would be a huge benefit to the community. Huge.

On Sat, Jan 29, 2022 at 6:28 AM Apostolis Bekiaris @.***> wrote:

hmm you are aware I sell support shouldn't you ask for help if it costs u so much? It would be more fair than blaming this work with honest impressions.

Anyways, this a framework, opened sourced, and free that aims to spare you the time to put it together and orchestrate it, has a learning curve as everything and also paid support to get out of trouble.

So, it is fine that cannot take the hand to everybody.

โ€” Reply to this email directly, view it on GitHub https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-1024902517, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABTJ6T3FCKKHTOSIZH7NLDUYPMN3ANCNFSM5HG4ANBA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

ndamgaard avatar Jan 29 '22 12:01 ndamgaard

  1. Download the source
  2. open the TestApplication
  3. Hangfire is installed there and operational as EasyTests run the same application as per this test https://github.com/eXpandFramework/Reactive.XAF/blob/master/src/Tests/EasyTests/Tests/Blazor/JobSchedulerService.cs (feel free to run it STEP BY STEP)

Yes there is a l;earnig curve and time to be spent to master the package. The wiki and videos provide enough guidance at least to me if I was the consumer. There is no extra magic after that the nuget installation and off u go as per wiki or if you wanna learn internals see the tests.

The same approach with any framework out there.

apobekiaris avatar Jan 29 '22 12:01 apobekiaris

I've been through the learning curve. I have the Hangfire app working. The Model Editor no longer works

On Sat, Jan 29, 2022 at 6:46 AM Apostolis Bekiaris @.***> wrote:

  1. Download the source
  2. open the TestApplication
  3. Hangfire is installed there and operational as EasyTests run the same application as per this test https://github.com/eXpandFramework/Reactive.XAF/blob/master/src/Tests/EasyTests/Tests/Blazor/JobSchedulerService.cs (feel free to run it STEP BY STEP)

Yes there is a l;earnig curve and time to be spent to master the package. The wiki and videos provide enough guidance at least to me if I was the consumer. There is no extra magic after that the nuget installation and off u go as per wiki or if you wanna learn internals see the tests.

The same approach with any framework out there.

โ€” Reply to this email directly, view it on GitHub https://github.com/eXpandFramework/eXpand/issues/892#issuecomment-1024905183, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABTJ6VYJNDSKSTJDZ6XIHDUYPORRANCNFSM5HG4ANBA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

ndamgaard avatar Jan 29 '22 15:01 ndamgaard

Closing issue for age. Feel free to reopen it at any time.

.Thank you for your contribution.

expand avatar Dec 04 '23 21:12 expand