Major Break Changed
- Break: Analyzer API fully rewrite.
- Break: Configuration format fully rewrite.
- A lot of settings was removed, renamed, re-organized, and also introduced some brand-new options.
Major Underlying Changed
- Changed: Decrease overall YAML usage.
- Replace YAML to JSON for book's metadata. It make a HUGE performance improvement when starting up (about 100x fast if large numbers of subscription).
- The old data will be migrated automatically.
- Replace YAML to JSON for volume's metadata.
- Cannot automatic migrate, but cmdlr never used it (just write it for logging), so it should not break anything.
Good Things for User
- Smarter book level tasks scheduling.
- `cmdlr` will automatic try to do the best that make all analyzers can working in the same time. Avoid traffic bursting or stoping at a part of sites.
- Allow to configure network usage (like `timeout`, `delay`, `per_host_connections`) on analyzer level.
- Add Socks support.
- Can assign a config file in command line interface.
- Can logging to filesystem.
- Simplify commandline interface.
- New `--json` output. Recommended using with `jq` to make query.
Development Enhancement
- Code style improvement.
- Let `finished`, `description`, `authors` fields be optional. simplify analyzer development.
- New helper function `autil.fetch()` and `autil.run_in_nodejs()` to simplify analyzer development.
- Upgrade all dependencies to newer version.
- Remove metadata cache system.
- Remove dependencies: `lxml`, `pyexecjs`
3.X