Changelog

All notable changes to this project will be documented in this file.
See Conventional Commits opens in a new tab for commit guidelines.

3.0.0

1 Dec 2022

💥 BREAKING CHANGES

  • Minimum supported Node version is v14.18; we’re dropping v12 support

2.1.3

13 Oct 2022

🔧 Fixed

2.1.0

12 Aug 2022

Features

2.0.0

9 Sept 2021

Features

  • correct the default “n” flag value, also reach 100% coverage (6e323cb)
  • migrate to ES Modules (8c9d95d)

💥 BREAKING CHANGES

  • programs now are in ES Modules and won’t work with Common JS require()

1.20.0

  • added more unit tests
  • “help” and “version” flags, if present, override anything else; “version” takes priority of “help” if both are present

1.19.0

24 May 2021

Features

  • config file based major bump blacklisting (e15f9bb)

1.18.15

11 Apr 2021

Reverts

  • Revert “chore: setup refresh” (23cf206)

1.18.1

28 Jan 2021

🔧 Fixed

  • add testStats to npmignore (f3c84e9)

1.17.0

28 Nov 2020

Accidental version bump during migration to SourceHut. Sorry about that.

1.16.0

15 Sept 2020

Features

  • implement custom sorting, considering tap and lect custom keys (10a1647)
  • swap a dependency, format-package with sort-package-json (ba5c390)

1.15.3

9 Dec 2019

🔧 Fixed

  • update to the latest meow api, no more short aliases (412bdd4)

1.15.1

20 Nov 2019

🔧 Fixed

  • update to the v4 meow api, aliases were broken until now (5c80a05)

1.15.0

18 Nov 2019

Features

  • cI mode — fixes #21 — plus few more tweaks (bc93a0f)

1.15.0

15 Nov 2019

Features

  • -i or --indentationCount — lets you choose how many indentations you want. Unless -t or --tabs is used, that many spaces will be used. Default is 1 tab or 2 spaces.
  • Clarified the output for -d or --dry — we only list the filtered files. The list does not mean that filtered JSON files will be sorted or need to be sorted or anything else. This flag is used to check what files you’re about to process.
  • -c or --ci — fix #21 — as per @widerin request, CI mode only checks all files, would their sorted versions differ from the inputs. If any files would be different after sorting, this CLI lists them and exits with a non-zero code. If all is fine, all files seem to be sorted, it doesn’t write, only confirms with a message and exits with a zero code.
  • -s or --silent now is truly silent — when it’s enabled, nothing is output to the terminal and you can tell the outcome only by the exit code (normally, a red or green character in front of the current line in the terminal).

1.14.0

8 Aug 2019

Features

  • skip all package.json files if -p/--pack flag is given (0e7d5e1), closes #13

1.13.0

18 Jun 2019

Features

  • Sorts package.json keeping recommended key order (edb7f1d)

1.12.0

10 Apr 2019

Features

  • Allow JSON files to contain topmost element as array not just plain object (09e066f)
  • Flag -a instructs to sort all arrays which contain only string elements (7fb34ac)

1.11.0

20 Jan 2019
  • Various documentation and setup tweaks after we migrated to monorepo
  • Setup refresh: updated dependencies and all config files using automated tools

1.10.0

26 Dec 2018
  • Added -s (--silent) flag (294dc8b)
  • Address single/plural cases in unsortable files (345d3d1)
  • Exclude DS_Store and other system files by default (02f0b31)
  • Labeling improvement (f81653d)
  • Setup improvements, unit tests and deep sort (5dff488)
  • Silent mode, more unit tests and improved reporting (f43fcca)

1.9.0

19 Aug 2018
  • 💥 Temporarily removing the nyc because it broke the ava builds after switching to Babel v.7
  • Updated all dependencies and refreshed the readme

1.8.0

11 Jun 2018
  • v5 ESLint is sensitive if being called on files that don’t exist. Previously we were quite liberal about the locations of unit test files. Our ESLint configs were targeting multiple locations, attempting to find some unit tests. Now this approach will cause errors so we moved all unit test files to /test/ folder.
  • Also, temporarily removing ava ESLint plugin because it broke on ESLin v.5.

1.7.0

11 Jun 2018

GitHub sold us out. In the meantime, we:

  • Migrated to BitBucket (to host repo + perform CI) and Codacy (for code quality audit)
  • Dropped BitHound (RIP) and Travis
  • Removed package-lock

1.6.0

29 May 2018
  • Excluded .DS_Store and other system files by default

1.5.0

27 May 2018
  • Sorts dot files too, as long as they pass the JSON parser and don’t contain evil extensions like yml, yaml or toml.
  • Restored -s/--silent mode. When it’s on, only report of two lines is shown: successful and failed counts. When it’s off (default), one row per sorted file output after each attempt to sort (successful or not), then the same report of two line in the end is shown.
  • Unit tests for all modes: --version, --help, -tabs.
  • Support for broken JSON files. If the file is broken and parser throws an error, that error will be reported in the report but other files won’t be affected by this.
  • 💥 Removed -d/--dry mode. It’s too much hassle to maintain it, after all, the operation performed on files is not deleting anything. Dry mode is normally used for risky operations, to test first. In our case there’s no risk. Files come out the same, just with sorted keys.

1.4.0

23 May 2018
  • Added unit tests. First time ever I pulled off completely async test files, writen in some random temporary folder somewhere within the system folders. This is first the first CLI app of mine that has proper unit tests.
  • Input is deeply traversed now and all plain objects no matter how deep are sorted.
  • Removed Babel and whole transpiling process.
  • Removed Listr and silent mode option. Silent mode is the only and default mode now.
  • Removed package-lock.json and .editorconfig
  • Set up Prettier

1.3.0

30 Jan 2018
  • Added -s or --silent flag. When enabled, shows only one row’s output. Handy when there are many files.

1.2.0

14 Dec 2017
  • Now if input contains only folder’s name, non-JSON’s are filtered-out. Basically, now this CLI is dumb-proofed, you can feed any paths and globs, containing or not containing JSON’s.

1.1.0

11 Dec 2017
  • Now serving transpiled code, aiming at Node v.4

1.0.0

12 Oct 2017
  • First public release