Skip to content

Release v1.6.0

Compare
Choose a tag to compare
@caronc caronc released this 15 Oct 20:11
· 150 commits to master since this release

Details

📣 New Notification Services:

💡 Features

  • mqtt:// added log entry on successful transmission for both consistency and to align with other plugins (#946)

  • Refactored URLBase() object to prepare for API Webhook support in the Apprise API (#973)

  • A global change to handles user= directive a better and auto-solves ambiguous situations where the URL looks like this: schema://username@hostname?user=username2 (#947).

    In the past the username would get lost and be trumped with username2. This is fine, but to may Apprise more versatile, Now in these circumstances Apprise will interpret it as: schema://password@hostname?user=username. This change does not disrupt other common formatting such as:

    • schema://username:password@hostname
    • schema://username@hostname
    • schema://hostname?user=username&password=password
  • Default Attachment maximum attachment size changed from 5MB to 1GB (be3baed). This just makes it easier to use the API and CLI without issues. It lets the upstream service complain if the attachment is too large instead of Apprise restricting you.

  • xml:// custom URL parsing better handles customized XML elements (inserted, renamed and deleted); (#945).

  • Configuration now supports Groups. You can now assign pre-defined tags to groups and trigger your notifications off of them. (#967)

    • Groups are processed at the end, so there is no requirement to define it at the front or end of your configuration files.

    • Group definitions stack as well (so defining the same group again with append any entries to what was already assigned.

    • You can assign more groups to groups

    • You can assign multiple groups in one single declaration

    • Here is a simple TEXT example:

      # assign "tag1" and "tag2" to the group "group"
      group = tag1, tag2
      
      # Group assigned to a group plus another tag
      groupA = group, tag3
      
      # Support multi-assignments (also stackable)
      # both groupB and groupC would acquire tag1 and tag4
      groupB, groupC = tag1, tag4
      
      # Append another tag into a group already defined
      group = tag4
      
        # Just some URLs defined as examples
      tag1 = mailto://credentials
      tag2 = mailto://credentials
      tag3 = mailto://credentials
      tag4 = mailto://credentials

      If you were to send your notification to the tag group it would in fact trigger both tag1, tag2, and tag4:

      apprise -g 'group' -b "Test Message!"
      
    • Here is a simple YAML example:

      # You must define a groups section
      groups:
          group: tag1, tag2
          groupA: group, tag3
          group: tag4
      
          # Support multi assignments:
          groupB, groupC: tag1, tag4
      
          # Another way you can define your groups:
          groupD:
            - tagX: Place an optional comment here; this is ignored and only tagX is retrieved
            - tagY: Another spot to place an optional comment
      
         # You can also just list them:     
          groupG:
             - tag1
             - tag3
             - group
      
      # Define your tags as usual here:
      urls:
         - json://localhost:
            - tag: tag1
         - form://localhost:
            - tag: tag2
         - mailto://credentials:
            - tag: tag3
         - mailto://credentials:
            - tag: tag4

❤️ Life-Cycle Support

  • MSG91 Rewrite due to massive upstream changes to their API. (#966)
    • It's basically a completely new plugin with zero backwards compatibility with it's previous design. Functionality restored in this release.
  • Twitter plugin supports x:// in addition to tweet:// and twitter:// to align with re-branding (#971)
  • Matrix updated to handle API v3. Attachment support not there, but works for v2. Simply add ?v=2 to your Apprise URL to use the older API for now. (#970)
  • Downgraded License to BSDv2 (BSDv3 is too strict) (#976)

🐛 Bugfixes

  • n/a

Installation Instructions

Apprise is available on PyPI through pip:

# Install Apprise v1.6.0 from PyPI
pip install apprise==1.6.0