Skip to content

v6.0.0a1

Pre-release
Pre-release

Choose a tag to compare

@parafoxia parafoxia released this 31 Mar 11:22
· 3 commits to main since this release

Another major version!

It's that time again for yet another major version. Just as you thought the current version would be the last!

What's changed so far?

  • The biggest change is to how the client is authorised. Secrets and Tokens are now able to make their own requests (meaning tokens can now refresh themselves)
  • There is now only one Client, and is uses sessions instead of shards to make bulk requests. This is significantly less clunky both to use and implement
  • The Tokens.expires_in attribute can now be reliably updated by analytix!
  • The Scopes.ALL now includes JWT scopes -- Scopes.ALL_READONLY mirrors the old behaviour
  • The minimum supported version of Python is now 3.10

What will change next?

I want to try and get to each part of the code and simplify it. I've already started working on simplifying the report validation system (which hasn't seen any major changes for a good few years now), and I plan to separate the workings of groups and reports, as currently groups are kinda second-class citizens.

Newer versions of Python of course have new features, and one that is particularly suited to analytix is exception groups. These will allow analytix to show all validation errors it finds at the same time, rather than one at a time (though you won't see this benefit if you're on Python 3.10).

It's worth keeping in mind that this is an alpha version, and there may be bugs. The core functionality seems to work okay, but the extended functionality (that which requires optional third-parties) has not been tested to the same degree, and may not work so well at the moment. Of course, as v6 continues development, these issues will be fixed, but do let me know if you see anything in the meantime!