Skip to content

Releases

hadome 0.4.3

Choose a tag to compare

@github-actions github-actions released this 07 Nov 09:37
v0.4.3
431fcca

What's Changed

  • Purity is decided per import cycle, ignores type-only imports, counts global IO APIs and more IO libraries and mocks, and purity-lost names what made a unit impure by @rerorets in #75
  • TypeScript and Python resolve imports through nested projects, tsconfig extends and workspace packages, follow tests into test support files, and count missing local imports as unresolved by @rerorets in #76
  • Kotlin and Java tests read inherited and nested test classes, setup hazards, typed lambda calls, MockK and REST Assured checks, calls on enum constants, and KDoc above a split annotation by @rerorets in #77
  • hadome reads underscore directories, counts lines as an editor does, and its messages, help, init and mutate output say what a reader needs by @rerorets in #78
  • TypeScript tests are read in their curried and Playwright forms and run the setup, hooks and fake timers around them by @rerorets in #79
  • Tests in different files are copies only with the same targets, overrides need no doc, a bare file name is found anywhere, and suggest reads camelCase and snake_case by @rerorets in #80
  • Go tests reach methods through the declared types of package variables, literals, helper results, range elements and fields, and their own package's unexported methods are targets by @rerorets in #81
  • Framework entry points can be let off doc comments, files.product keeps test support paths as product code, Go test helper packages are test support that tests are followed into, and the two skipped-directory lists are tested to agree by @rerorets in #82
  • An import into a directory hadome does not read is an unknown import for review, vi.fn passed as a value is no mock, and Python setup gives its clock and sleep to each test by @rerorets in #83
  • Go helpers and function literals read their parameters by declared type in their own scope, and test package variables are typed from any test file of the package by @rerorets in #84
  • Kotlin declarations after several annotations with arguments are read, and Kotlin tests read string-template constants and value fields inherited from another file by @rerorets in #85
  • Go mutate does not return the zero value in place of a constant that is already zero, and init's mutation comment is tested by @rerorets in #86
  • The README pins 0.4.3 by @rerorets in #87

Full Changelog: v0.4.2...v0.4.3

hadome 0.4.2

Choose a tag to compare

@github-actions github-actions released this 06 Nov 19:08
v0.4.2
9ef3dff

What's Changed

  • The Japanese documents state definitions plainly, agree with the code and CI, and the README pins 0.4.2 by @rerorets in #74

Full Changelog: v0.4.1...v0.4.2

hadome 0.4.1

Choose a tag to compare

@github-actions github-actions released this 06 Nov 10:36
v0.4.1
ec32abe

What's Changed

  • TypeScript tests reach the code through object-held helpers and variables set up outside the test by @rerorets in #67
  • Python tests reach the code through pytest fixtures, setUp and lambda helpers by @rerorets in #68
  • Rust paths starting with the crate's own name are the repository's, as integration tests write them by @rerorets in #69
  • Go tests reach the code through their file's package-level variables by @rerorets in #70
  • Go tests that run a testify suite reach the code through its methods by @rerorets in #71
  • Kotlin tests use their companion object's fields and helpers as the class's own by @rerorets in #72
  • The README pins 0.4.1 by @rerorets in #73

Full Changelog: v0.4.0...v0.4.1

hadome 0.4.0

Choose a tag to compare

@github-actions github-actions released this 06 Nov 03:37
v0.4.0
e1cc23d

What's Changed

  • The docs show a pre-push hook with --head HEAD and a separate tools.mod for Go by @rerorets in #54
  • A comment between a JVM call's arguments is not an argument, and no longer stops the analysis by @rerorets in #55
  • Calls through a test class's fields reach the product in Java and Kotlin by @rerorets in #56
  • Comparing the results of two calls spelled the same is not an always-true assertion by @rerorets in #57
  • CI and release build macOS arm64 on macos-15 by @rerorets in #59
  • TypeScript tests call the functions they take from a module loaded with import() by @rerorets in #60
  • REST Assured's checks after then() and MockMvc's andExpect count as asserts by @rerorets in #58
  • TypeScript tests call the components they render and follow helpers held by a const by @rerorets in #61
  • A test that drives the application through an HTTP test client is neither guards-nothing nor target-unknown by @rerorets in #62
  • A test reading a field built from a product value reads the product by @rerorets in #63
  • The packaging smoke test runs Gradle without a daemon, so its cleanup no longer races it by @rerorets in #64
  • The README pins 0.4.0 by @rerorets in #65

Full Changelog: v0.3.1...v0.4.0

hadome 0.3.1

Choose a tag to compare

@github-actions github-actions released this 05 Nov 11:33
v0.3.1
3b17301

What's Changed

  • The sentences that introduce a list in the text output come out in the chosen language by @rerorets in #52
  • The README pins 0.3.1 by @rerorets in #53

Full Changelog: v0.3.0...v0.3.1

hadome 0.3.0

Choose a tag to compare

@github-actions github-actions released this 05 Nov 11:15
v0.3.0
2f7e7a6

What's Changed

  • The release procedure tags with a signed tag by @rerorets in #43
  • The README notes that npm publishing is delayed by @rerorets in #44
  • The README shows how to install from the release archive by @rerorets in #45
  • The README's archive steps put hadome on PATH by @rerorets in #46
  • hadome version prints the module version when go get -tool built it by @rerorets in #47
  • A diagram box may describe its directory after a line break by @rerorets in #48
  • Adding the first .hadome.yml introduces hadome instead of loosening by @rerorets in #49
  • A diagram box with the class planned may name a directory not created yet by @rerorets in #50
  • The README pins 0.3.0 by @rerorets in #51

Full Changelog: v0.2.0...v0.3.0

hadome 0.2.0

Choose a tag to compare

@github-actions github-actions released this 05 Nov 06:48
v0.2.0
69ca78e

What's Changed

  • Release: secrets in a tag-only environment; only a pushed version tag publishes by @rerorets in #1
  • README: shorter and plainer, with a picture of what a check reports by @rerorets in #2
  • Docs: a clearer layout, plainer prose, design docs that match the code; CONTRIBUTING and SECURITY by @rerorets in #3
  • Design: rules that stop tests which are not needed by @rerorets in #4
  • tests/guards-nothing fails a new test that calls and reads no product code by @rerorets in #5
  • tests/duplicate fails a new copy of an existing test by @rerorets in #6
  • tests/no-assertion fails a new test that checks nothing by @rerorets in #7
  • hadome agents --write takes several files and writes none when one fails by @rerorets in #8
  • Design: hadome mutate breaks the code a change touched and fails when no test notices by @rerorets in #9
  • guards: is read in TypeScript, Python, Rust, Java and Kotlin tests, not only Go by @rerorets in #11
  • cargo binstall checks a minisign signature on every release archive by @rerorets in #12
  • A check runs each gate's self-test before using it, and stops when it fails by @rerorets in #13
  • A misspelt configuration key shows how the key it meant is written by @rerorets in #14
  • Docs: design docs say what the code does, with no decision logs or plans by @rerorets in #10
  • hadome explain says what a rule finds, why, how to fix it, and what tunes it by @rerorets in #15
  • hadome check --head compares two revisions instead of a revision and the working tree by @rerorets in #16
  • A Rust test that uses a type #[automock] generates counts as using a mock by @rerorets in #17
  • Design: configuration can add test and generated roles, and imports with no known destination need review by @rerorets in #18
  • An import whose destination is decided at run time is reported for review, and makes its unit impure by @rerorets in #19
  • files.tests and files.generated give files the roles the conventions do not by @rerorets in #20
  • Agents asking about exit 3 give what was listed, why, and the other way, and leave the decision to the person by @rerorets in #22
  • Workflows use the first major of each action that runs on Node 24 by @rerorets in #24
  • config/loosened points at the line in head where the configuration loosens by @rerorets in #25
  • CI shows what hadome asks a person to review instead of failing on exit code 3 by @rerorets in #23
  • hadome mutate breaks the Go functions a change touched and fails when no test notices by @rerorets in #21
  • hadome mutate reaches agents, the agent guide, the CI example and hadome init by @rerorets in #27
  • hadome mutate breaks TypeScript, Python, Rust, Java and Kotlin functions with the same five breaks as Go by @rerorets in #26
  • TypeScript files are parsed with the TypeScript grammar and the rest with TSX by @rerorets in #31
  • Design of the Terraform and Ansible adapters, both pure Go by @rerorets in #29
  • Design of messages in English or Japanese, chosen by --lang or the configuration by @rerorets in #30
  • hadome mutate no longer panics on a Go file that declares anything besides functions by @rerorets in #32
  • A test pins which symbols the tree-sitter mutator breaks and in what order by @rerorets in #33
  • hadome can run hadome mutate on itself locally by @rerorets in #34
  • Adding a mutation section that base lacks is no longer reported as loosening by @rerorets in #35
  • Every release archive and package ships the licenses of hadome and of every module linked into it by @rerorets in #36
  • Findings, rule descriptions and the summary can come out in Japanese by @rerorets in #37
  • The messages design records that the text output's labels stay in English by @rerorets in #39
  • hadome reads Terraform: modules, variables and outputs, and run blocks as tests by @rerorets in #38
  • hadome reads Ansible: roles, their defaults, and Molecule scenarios as tests by @rerorets in #40
  • CLAUDE.md lists Terraform and Ansible among the language adapters by @rerorets in #41
  • The README pins 0.2.0 and describes hadome mutate by @rerorets in #42

New Contributors

Full Changelog: v0.1.1...v0.2.0

hadome 0.1.1

Choose a tag to compare

@github-actions github-actions released this 03 Nov 21:03

Full Changelog: v0.1.0...v0.1.1

hadome 0.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Nov 20:43