Skip to content

Finicky 3.0.0 - Simpler configuration

Compare
Choose a tag to compare
@johnste johnste released this 10 Jun 17:32
· 103 commits to master since this release

Finicky v3.0.0 is here, and it's easier to use than ever. ⚡

This release tries to make a lot of common use cases simpler in Finicky, by adding useful shortcut features like wildcards, partial url objects and direct url rewriting in handlers.

New features

  • Wildcard matching

    Instead of using a regular expression to match incoming urls you can now use wildcards which match zero or more characters:

    // Before (this still works!)
    match: /https?:\/\/example\.com.*/,
    // After (this matches both http and https urls, no need to specify procotol)
    match: "example.com*",
  • Simpler url rewrites

    Before you had to return the full url object (usually by using object spread) when you wanted to change a url. Now, you can just return the properties you want to change:

    // Before (this still works!)
    url: ({url}) => ({ ...url, protocol: "https" })
    // After
    url: { protocol: "https" }
  • Support for url rewriting directly in handlers
    You can now add a url rewrite to your handlers directly instead of having a rewrite and a browser handler.

   // Before (this still works!)
   rewrite: [{ 
     match: "http://google.com*", 
     url: "http://ecosia.com" 
   }],
   handler: [{ 
     match: "http://ecosia.com", 
     browser: "Safari" 
   }]
   // After
   handler: [{ 
     match: "http://google.com*", 
     url: "http://ecosia.com", 
     browser: "Safari" 
   }]

Other improvements

  • Application is now notarized by Apple. You should see fewer warnings when running it for the first time. #68
  • Refactor update checking, let me know if you get annoyed by unnecessary notifications!
  • Fix a bug where browsers didn't open in the background properly #111
  • New logo #115

Watch out for breaking changes! ⚠️

This release contains a few updates that might break your setup! With the addition of wildcard matching for strings if you are using direct string matching on urls containing asterisks * Finicky will now match more strings since it now treats the asterisk as a wildcard.