Jump to content
Ketarin forum


  • Content Count

  • Joined

  • Last visited

Everything posted by shawn

  1. Bug report: Since I added new variables to my general structure I wanted to update my default app template. I clicked 'add new application'. I clicked on 'variables'. I added several variables and set most of them to regex, since that's what I almost always use for those, and two as text. I clicked OK then went to 'advanced settings' and attempted to assign version as the change indicator. It wasn't listed. I had set version as a regex variable. I revisited the variables page and recreated it, noticing that all the regex variables I created were lost. All the text ones were still there. I had not assigned a URL to the regex variables, but IMHO it should never delete variables on me. Worst case scenario it should nag/warn me or provide an idiot prompt ("are you sure you don't want to add a URL for this variable?") and then ignore the variable during processing or automatically disable it when I save it.
  2. Not really. I've been trying to trim down the process in order to make a simple test case and I might have found a way around it. The issue is that *new* Textual variables are not being parsed correctly when using the ReplaceAllInString syntax: $sdownload = $app.variables.ReplaceAllInString("{sdownload}", $sfiletime, $sfilename, $true); I'm currently working around this by testing the type of variable each time and only using ReplaceAllInString for non-Textual variables, and using TextualContent for the Textual variables that do not have curly braces in them. If it has a curly brace I'm pushing it through ReplaceAllInString anyway for safety, but for new Textual variables always returns an empty string at that point. I haven't added many new apps recently so can't say whether this is affecting non-Textual variables. I don't think it is. Unfortunately, this TextualContent-only parsing means that embedded variables are not processed. Thus if I set myvar to "This is version {version}" then {myvar} is not being parsed to "This is version 1.0" but instead appears literally as "This is version {version}".
  3. Hi, @aldric87, You can find the current beta attached to the first post in the current thread.
  4. I tried exporting & importing and it's still not seeing the new variable.
  5. Bug: Using latest 1.8.11 beta posted June 15 and seeing strange behavior. It looks like new variables may not be parsed the same way as variables that already exist for a job. I created a new variable on a job, "svendor". I populated it with a text value (Nirsoft). I use the following PS code in after update to populate a field in a database: $svendor = $app.variables.ReplaceAllInString("{svendor}", $sfiletime, $sfilename, $true); if($svendor -eq "{svendor}"){$svendor = '';} echo 'svendor:'$svendor; Unfortunately, svendor always returns empty. 2019-09-21 11:59:38: PowerShell: svendor: 2019-09-21 11:59:38: PowerShell: 2019-09-21 11:59:38: PowerShell: swebsite: 2019-09-21 11:59:38: PowerShell: https://www.nirsoft.net/utils/browsing_history_view.html I changed svendor in the first param of ReplaceAllInString to swebsite (another variable I use in all my jobs) and it parsed it correctly. 2019-09-21 11:59:03: PowerShell: svendor: 2019-09-21 11:59:03: PowerShell: https://www.nirsoft.net/utils/browsing_history_view.html 2019-09-21 11:59:03: PowerShell: swebsite: 2019-09-21 11:59:03: PowerShell: https://www.nirsoft.net/utils/browsing_history_view.html I've closed and reopened Ketarin and deleted and recreated the variable. I've tried a different variable name. Nothing is getting this value to populate into the powershell script. I've tried this on three jobs now and each is failing. Two are based on a template and I thought that might be the problem, but I tried with one that isn't based on a template and it didn't work either. Any ideas?
  6. The user variables are listed within the left side column. There are some special internal variables, and other values that aren't variables but are usable in your user variables and scripts such as internal values and functions. The functions can be found here and a method for parsing for internal values can be found here.
  7. I was experiencing a problem with the new global "On update failed" command. I'm leaving this comment to help others that might experience the same issue. I'm using it to log issues with apps and record as much about the event as possible. It was working pretty well most of the time, but randomly raised a file access error to the text file I was logging to. EVEN WITH error handling it still raised an error and locked up Ketarin at that point during a deadlock on the log file. It only erred when parallel downloads > 1. If I reduced it to 1 then I had no problems. I switched out the code from using Add-Content to piping to Out-File -Append. That works fine. The revised code I'm using is below. #### Append current log details Try{ ( "`nERROR:`t$($scategory)`t$($sslug)`t$($sname)`t$($sversion)" | Out-File Updates.txt -Append ) } Catch{ echo 'Can not write to Updates.txt'; echo "`nERROR:`t$($scategory)`t$($sslug)`t$($sname)`t$($sversion)"; } #### With the Out-File -Append method I am able to hike parallel downloads back up to 4 without problems. Still hoping for a more descriptive error handler so I can record much the same text that appears in the popup directly to the log. Also, will there be an option to disable the post-check-for-updates error popup? Thanks, @floele!
  8. Is there a way of trapping the specific error message for logging? I'd like to completely eliminate my reliance on the post-update-cycle popup.
  9. The short answer for Chrome is that they haven't updated their download locations in that long. They're doing it right. As for the search feature, I could have sworn it indicated whether you had individual results already installed. Maybe that needs a feature request?
  10. This makes me grateful I have less than a dozen FH apps.
  11. Good morning, @Hulk91. I tried each of your links and they all failed for me because the links had foreign characters embedded within the URLs. Stripping those characters out allows the link to work again. I have personally experienced problems with the new builds munging characters in a few of my apps (replacing "\\&" with "\\\&"), so they had to each be fixed again before they would work. I suspect something similar happened with yours. The easy fix is to open notepad or notepad++ and paste the URLs into there and see if the non-breaking space becomes visible for you as either a space or a question mark. If not, consider pasting the URL alone into a command prompt or powershell. Remove the invalid characters, copy then paste the clean result back into Ketarin.
  12. The current beta (at the top of this thread) supports FH. If you continue to experience issues with that please report here. The nightly build should also support FH, but since it's a nightly build I recommend avoiding it. Any number of other features could exist in an unstable state.
  13. I use this with probably half my multi-step apps. It's awesome.
  14. The current "release" version is 1.8.10 (you can see this on the Ketarin homepage or in the PAD file). The link you gave is for the nightly builds, which are *not* beta versions and should be expected to be unstable.
  15. Slimjet recommends just overwriting the target folder with newer files. Most portable apps work that way. If you're concerned about having a clean install folder, then you should erase the entire destination folder before extracting there.
  16. Not directly. However, if the option to "use the following variable as indicator for changes" is enabled with your version variable, then it checks the parsed "version" against your version variable and will only download if the version is different.
  17. Unless you configure the option on the Advanced tab named "Use the following variable as indicator for changes" Ketarin will use its native HTTP header parsing capability to determine if the downloaded file would be newer/different than the last file it downloaded. Be aware that this does not work for some sites, so you should get in the habit early and parse your own version numbers from the source website so you have better control over whether the file is actually newer. For example, I download many ISO files for different operating systems and the last thing you want is to download an extra 8 copies of Fedora every time you run Ketarin because the Fedora site uses a new ETag and timestamp with every request, effectively breaking cache controls. Downloading an extra 40 GB of Fedora spins a couple times a day is a good way to waste bandwidth. Using a version variable which parses the changelog for the current release version, and "version" in the "Use the following variable as indicator for changes" field avoids this problem very nicely. Be aware that there's also an Advanced option to "ignore file information" that needs to be checked if you will be deleting the actual downloaded files after extracting their contents. If you don't have this option enabled then Ketarin will default to correcting the missing files by re-downloading them.
  18. Welcome to Ketarin, @Kacey. You're going to love it. Ketarin can use many automatic methods to detect if a download is different, including checking the HTTP headers of the response (download URL) for the file size, file timestamp, ETag, and cache-control headers. Ketarin also intelligently (though not always perfectly) parses the download filenames from redirects and downloads. If the source site is doing things correctly, it does a hell of a job. That said, the beauty of Ketarin is that you don't have to rely on that. If you want more details (such as the specific version number) you can use the "monitor for changes" variable to parse something specific on the source website as a version or change indicator. You can then use this information (if you want) within the download file name. If you're going to use your process above (download, extract, delete partial data, delete zip) you can automate the entire process in Ketarin. There are actually several samples of doing exactly that here on the forum. In the specific case of this file and your stated purpose (download, extract, delete), I would use the static "go" link MS provides and hard-code the output filename to ease extraction. It's not a huge deal to use {file} instead of "vscode.zip" but if you're new it can make things a little easier.
  19. Do you get the error if you use an actual file: URL such as "file:///C:/path/firefoxversion.txt" ?
  20. @Etz is it the exact same jobs.db file? what exactly happens?
  21. it started working again after a delay. the "fix" from SO actually made it worse.
  22. Hmm. Is it possible you're using a different global variable path based on a value that doesn't exist in one context? Do you get any errors in the app log or event log?
  23. @Etz Are both instances running from the same network drive? Are you running either of them elevated? What OS? Do you have SmartScreen enabled?
  24. Thanks, @floele! I'll try that now.
  • 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.