~seirdy/moac

v2.0.0 2 years ago

moac-v2.0.0-4356cb2-freebsd-386.tar.gz
sha256:de3726987c187553eac05ad82dcd7b0a83e7ef5058cc11e7a0fadcb69dfb3ef8
moac-v2.0.0-4356cb2-freebsd-386.tar.gz.asc
sha256:d67b1504cdd35791c98b2976f4c8760a4e30638d4a94642c569ba27dde5eb5ec
moac-v2.0.0-4356cb2-freebsd-amd64.tar.gz
sha256:04f89c081222b6a5c2e85c9716f16e4dacb8a115bc9bfa33be77bd0f630c1138
moac-v2.0.0-4356cb2-freebsd-amd64.tar.gz.asc
sha256:56ed69513ece45d4b53bc01721ae2cb6ebe38d7daf0a4ae3747e5562d3de6d0d
moac-v2.0.0-4356cb2-freebsd-arm.tar.gz
sha256:e7e97c0975834544c5d5b63caa446cf29546b6c46a7aad4b742e648b4db5d817
moac-v2.0.0-4356cb2-freebsd-arm.tar.gz.asc
sha256:36cded626c94197566f929c90c4c9c1fb918d8673cbcf57166256f5e13ec397a
moac-v2.0.0-4356cb2-freebsd-arm64.tar.gz
sha256:7593225bf8fc3ac13c8018b0f65ceaf2477f541a40ab550a41ae0c26cdc58280
moac-v2.0.0-4356cb2-freebsd-arm64.tar.gz.asc
sha256:c45023c1f52d286b24094ca7a68dd6800c2a14d2cd5c213a590c49d32bd8440a
moac-v2.0.0-4356cb2-linux-386.tar.gz
sha256:e528e6a6574e39e0a520449e06fa137cea47140f6ab379d3696d21394f9f0949
moac-v2.0.0-4356cb2-linux-386.tar.gz.asc
sha256:af6ca5f6df1f2565bb6814b3e9d0fce0fd4b4429c71cda54c347607b3f60a69d
moac-v2.0.0-4356cb2-linux-amd64.tar.gz
sha256:a3f0bd2358b728e180cab28a0813c5ddefb982e7aa28c329f120ff2eba6ed855
moac-v2.0.0-4356cb2-linux-amd64.tar.gz.asc
sha256:7216c3e567c914468dd5ff57576d1ae76fccb3b094775e12e6ddd4d001ef2b00
moac-v2.0.0-4356cb2-linux-arm.tar.gz
sha256:aa3b08ef2a18f70ca6d8160b7489a9b253e5d85254cea80865ff89f4971c3adc
moac-v2.0.0-4356cb2-linux-arm.tar.gz.asc
sha256:165104cd3377d96ef1b9f8449c8eed5a31421c701e5c8214a3888270737d3491
moac-v2.0.0-4356cb2-linux-arm64.tar.gz
sha256:b8c922db60bdc32035f0cca47fc86f10416e21ae224a4a0f5b0221eef24acf16
moac-v2.0.0-4356cb2-linux-arm64.tar.gz.asc
sha256:abcde54417e52d2d3cdf3b7a8dd43c3a4d43434f900619e4657f17b390528737
MOAC v2.0.0

This is a major release with many breaking changes to the library, but
hardly any visible changes to the CLI programs.

Changes common to both the CLI and library:

- Entropy estimates are slightly more accurage
- While normal non-CGO performance is about the same, perf with msan or
  race-detectors enabled is much slower. This should only be visible
  when generating/analyzing hundreds/thousands of passwords.

Changes to the "moac" and "moac-pwgen" CLI programs:

- Input validation: impossible physical values (including temperatures
  above the Planck Temperature) are forbidden.

Changes to the library:

v2.0.0 is close to a full re-write. So many APIs have changed for v2 that listing all the changes would be only slightly shorter and harder to follow than just reading the updated docs.

- A new "charsets" subpackage defines a Charset interface, CustomCharset
  and DefaultCharset implementations, and a CharsetCollection. The
  CharsetCollection's Add() method now handles all redundancies.
- Input validation
- Replace exported functions accepting a "quantum" bool with quantum and
  non-quantum variants of those functions.
- Password reqs are passed as a struct to GenPW
- pwgen.BuildCharsets is now charsets.ParseCharsets
- Parameters and returns for almost every function have changed

Rohan Kumar (28):
      Doc: mention that work happening on v2 branch
      Feat!: validate: avoid impossible temperatures
      Refactor!: make moac funcs arg-less Givens methods
      Test: test quantum/non-quantum variants equally
      Test: style fixes for pwgen tests
      Test: test new temperature bounds enforcement
      Refactor!: change import paths to /v2 for v2.0.0
      Chore(CI): install golangci from master branch
      Refactor! adopt Charsets interface/subpkg (1/3)
      Refactor! adopt Charsets interface/subpkg (2/3)
      Refactor! adopt Charsets interface/subpkg (3/3)
      Refactor!: remove entropy.Entropy error return
      Fix: order charsets.Symbols correctly
      Refactor!: remove Name() from Charset
      Fix: reduce unnecessary alloc for charset-building
      Chore(style): improve string formatting
      Chore: Makefile: add profiling, test-quick
      Fix: improve minimization of charset redundancy
      Test: refactor: break out some nested code
      Feat: validate given values to be non-negative
      Chore(CI): speed up Fedora build a bit
      Build: fix Makefile portability/conventions
      Chore(style): tiny style fixes from go-consistent
      Chore(lint): moar linters/formatters
      Chore(dep): rebuild go.mod, go.sum
      Doc: add clarifications to README
      Refactor!: pass password requirements as a struct
      Doc: update README for v2, add project status