Jump to content
Ketarin forum

Ketarin 1.0.2 (beta)


floele
 Share

Recommended Posts

+Execute command before updating

+Option to download a file exclusively

+Added automatic backups (keeps up to 6 old copies of your database)

 

*Moved "Show groups" to the "View" menu

 

!Deleting multiple applications did not update the interface correctly

!Fixed a bug that occurred when changing the download path

!Fixed wrong (too high) timeout values for many web requests

!Fixed FileHippo beta status not being detected correctly (anymore)

 

v2

+Function "regex" (takes arguments "regular expression" and "index of match group" optionally)

+Export command line option

+Show database path in about screen

+Post-update command

 

*{url:*} is no longer replaced if the actual values cannot be determined correctly

 

http://ketarin.canneverbe.com/downloads/Ketarin/Ketarin-1.0.2.zip

Link to comment
Share on other sites

+Execute command before updating

+Added automatic backups (keeps up to 6 old copies of your database)

Excellent !!! =D

 

!Fixed a bug that occurred when changing the download path

I'm having an issue with target display on GUI, path is {target}\{category}\{url:basefile}_{version}.{url:ext}, file name is correct, iclview_26.6.2006.zip, but display is not, iclview_26.6.2006_26.6.2006.zip. Previous version had this same problem, I have updated to the new a few moments ago.

Edited by FranciscoR
Link to comment
Share on other sites

Yep, this is a limitation I cannot work around. If appyface would have posted in this forum (:-p)...

 

this is not really a bug actually, at least not one that I could possibly fix.

When the value is displayed in the target column, it does not know of

course what the actual download URL will be (because Ketarin would

have to perform a slow web request for that). So instead of using

"url:basefile" it uses "file:basefile" as variable content which will

lead to the duplicated name.

(This is the price you have to pay for wanting all that complexity

with variable content resolution in that column :-p )

Link to comment
Share on other sites

@Flo

 

How does the the new automatic backup feature work?

 

The first time I launched Ketarin 1.0.2, it created this file:

jobs.db_2009-02-16.bak

 

Since then I have made new app entries, edited apps, run updates, quit and relaunched, but still this is the only file, and it has not been updated since creation.

 

More info please? Thanks,

 

--appyface

Link to comment
Share on other sites

+Function "regex" (takes arguments "regular expression" and "index of match group" optionally)

You rock ! ;)

 

P.S. Not sure if I understand how to use "index of match group". A small example would help.

 

*{url:*} is no longer replaced if the actual values cannot be determined correctly

Nothing is diplayed on my Target column anymore. All I see is {url:basefile} & {url:ext}, even after update.

Link to comment
Share on other sites

1. If you have groups within your regex (like "(Application) (Version)") you can select one of those groups instead of the whole match.

2. That's the way it is intended. The values can be wrong if displayed at this location, so they will simply not be resolved.

Link to comment
Share on other sites

1. If you have groups within your regex (like "(Application) (Version)") you can select one of those groups instead of the whole match.

Nice ! =D

2. That's the way it is intended. The values can be wrong if displayed at this location, so they will simply not be resolved.

Hm, I understand. Nothing else unusual here.

Link to comment
Share on other sites

It's not like that:

 

18-02-2009 23:43:47: Update started with 1 application(s)
18-02-2009 23:43:47: aaa: Replacing {app} in '{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe)}' with '[url]http://www.versiontracker.com/php/dlpage.php?id=9679&db=win&pid=10008952&kind=&lnk=http%3A%2F%2Fwww.jam-software.com%2Ftreesize%2FTreeSizeProfessional-Demo.exe[/url]'
18-02-2009 23:43:47: aaa: Replacing {app2} in '{app2:replace:%2F:/}' with ''
18-02-2009 23:43:47: aaa: Replacing {app3} in 'http:{app3}' with ''
18-02-2009 23:43:47: aaa: Failed, URI inválido: Não foi possível analisar a Autoridade/o Anfitrião.
18-02-2009 23:43:47: aaa: Replacing {app} in '{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe)}' with '[url]http://www.versiontracker.com/php/dlpage.php?id=9679&db=win&pid=10008952&kind=&lnk=http%3A%2F%2Fwww.jam-software.com%2Ftreesize%2FTreeSizeProfessional-Demo.exe[/url]'
18-02-2009 23:43:47: aaa: Replacing {app2} in '{app2:replace:%2F:/}' with ''
18-02-2009 23:43:47: aaa: Replacing {app3} in 'http:{app3}' with ''
18-02-2009 23:43:47: aaa: Failed, URI inválido: Não foi possível analisar a Autoridade/o Anfitrião.
18-02-2009 23:43:48: Update finished
18-02-2009 23:46:24: Update started with 1 application(s)
18-02-2009 23:46:24: aaa: Replacing {app} in '{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):1}' with '[url]http://www.versiontracker.com/php/dlpage.php?id=9679&db=win&pid=10008952&kind=&lnk=http%3A%2F%2Fwww.jam-software.com%2Ftreesize%2FTreeSizeProfessional-Demo.exe[/url]'
18-02-2009 23:46:24: aaa: Replacing {app2} in '{app2:replace:%2F:/}' with ''
18-02-2009 23:46:24: aaa: Replacing {app3} in 'http:{app3}' with ''
18-02-2009 23:46:24: aaa: Failed, URI inválido: Não foi possível analisar a Autoridade/o Anfitrião.
18-02-2009 23:46:24: aaa: Replacing {app} in '{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):1}' with '[url]http://www.versiontracker.com/php/dlpage.php?id=9679&db=win&pid=10008952&kind=&lnk=http%3A%2F%2Fwww.jam-software.com%2Ftreesize%2FTreeSizeProfessional-Demo.exe[/url]'
18-02-2009 23:46:24: aaa: Replacing {app2} in '{app2:replace:%2F:/}' with ''
18-02-2009 23:46:24: aaa: Replacing {app3} in 'http:{app3}' with ''
18-02-2009 23:46:24: aaa: Failed, URI inválido: Não foi possível analisar a Autoridade/o Anfitrião.
18-02-2009 23:46:24: Update finished
18-02-2009 23:47:49: Update started with 1 application(s)
18-02-2009 23:47:49: aaa: Replacing {app} in '{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):0}' with '[url]http://www.versiontracker.com/php/dlpage.php?id=9679&db=win&pid=10008952&kind=&lnk=http%3A%2F%2Fwww.jam-software.com%2Ftreesize%2FTreeSizeProfessional-Demo.exe[/url]'
18-02-2009 23:47:49: aaa: Replacing {app2} in '{app2:replace:%2F:/}' with ''
18-02-2009 23:47:49: aaa: Replacing {app3} in 'http:{app3}' with ''
18-02-2009 23:47:49: aaa: Failed, URI inválido: Não foi possível analisar a Autoridade/o Anfitrião.
18-02-2009 23:47:49: aaa: Replacing {app} in '{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):0}' with '[url]http://www.versiontracker.com/php/dlpage.php?id=9679&db=win&pid=10008952&kind=&lnk=http%3A%2F%2Fwww.jam-software.com%2Ftreesize%2FTreeSizeProfessional-Demo.exe[/url]'
18-02-2009 23:47:49: aaa: Replacing {app2} in '{app2:replace:%2F:/}' with ''
18-02-2009 23:47:49: aaa: Replacing {app3} in 'http:{app3}' with ''
18-02-2009 23:47:49: aaa: Failed, URI inválido: Não foi possível analisar a Autoridade/o Anfitrião.
18-02-2009 23:47:49: Update finished

 

But I haven't find the way to crack it either. ;)

Link to comment
Share on other sites

In 'standard' regex the ( ) groups are called 'backreferences', and are referred to positionally. The first group is referred to as \1 the second group \2 and so in.

 

This is useful for example in a text editor, where you might have search and replace:

 

Search: (findsomestring)(.*?)(findanotherstring)

Replace with: \2\3\1

 

Before: findsomestring123456findanotherstring

After: 123456findanotherstringfindsomestring

 

Flo are you using tradtional backreferences here?

Link to comment
Share on other sites

Francisco, would you translate your error box to English, please?
I think it's a different issue (input string of characters with wrong format)... probably while FranciscoR was testing the [+Function "regex" (takes arguments "regular expression" and "index of match group" optionally)] features Flo has implemented.
Link to comment
Share on other sites

Francisco' date=' would you translate your error box to English, please?[/quote']I think it's a different issue (input string of characters with wrong format)... probably while FranciscoR was testing the [+Function "regex" (takes arguments "regular expression" and "index of match group" optionally)] features Flo has implemented.

Yes, it's correct, Ketarin complaints of an ilegal format of regex function.

 

Regarding the groups: "0" is the full match, "1" is group 1, "2" is group 2 and so on. You'll see if you try.

That's what I did. 0,1( I didn't bother with 2 as 0,1 didn't work) as argument2, you have errors on my post #17. I am using the same example of the other thread. The first update on that list outputs an error because there's no argument2, right ?

 

Variable app is "http://www.versiontracker.com/php/dlpage.php?id=9679&db=win&pid=10008952&kind=&lnk=http%3A%2F%2Fwww.jam-software.com%2Ftreesize%2FTreeSizeProfessional-Demo.exe"

 

I used

{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):1}

{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):0}

 

Log error message is identical, I don't see why

{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):1}

Didn't work, this one correct is it not ?

 

And yes, I can reproduce it. Gimme a minute. I was using something like

{app:regex:.*?id=\d\d\d\d.*?(%2F%2F.*?\.exe):(%2F%2F.*?\.exe)}

Edited by FranciscoR
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.