# to-semver

> Get an array of valid, sorted, and cleaned semver versions from an array of strings

Latest version **4.0.0** (published 2021-04-21) · MIT license · 0 weekly downloads

## Install

```sh
npm install to-semver
pnpm add to-semver
yarn add to-semver
bun add to-semver
```

## Health

**Score 28/100 (F)** — status: abandoned.

Positive: has types package; esm support; no vulnerabilities; high quality score.

Warnings: low downloads.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 4.0.0 |
| Published | 2021-04-21 |
| First published | 2017-05-12 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | separate (@types/to-semver) |
| Module format | ESM |
| Node | >=12 |
| Dependencies | 2 |
| Unpacked size | 4.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 41 |
| Author | Sindre Sorhus |
| Maintainers | sindresorhus |
| Keywords | semver, semantic, version, versions, versioning, list, array, clean, sort, cleaned, sorted, valid, validated, filter, filtered, git, tag, tags |

## Links

- npm: https://www.npmjs.com/package/to-semver
- Repository: https://github.com/sindresorhus/to-semver
- Homepage: https://github.com/sindresorhus/to-semver#readme
- Issues: https://github.com/sindresorhus/to-semver/issues
- Funding: https://github.com/sponsors/sindresorhus
- npm.io page: https://npm.io/package/to-semver

## Dependencies (2)

- [semver](https://npm.io/package/semver.md) ^7.3.5
- [clean-semver](https://npm.io/package/clean-semver.md) ^2.1.0

## Alternatives

- [@regle/core](https://npm.io/package/@regle/core.md) — 47.0K weekly downloads
- [typeof-arguments](https://npm.io/package/typeof-arguments.md) — 12.5K weekly downloads
- [@lokalise/projects-engine-contracts](https://npm.io/package/@lokalise/projects-engine-contracts.md) — 978 weekly downloads
- [@osjwnpm/nam-laboriosam-quibusdam](https://npm.io/package/@osjwnpm/nam-laboriosam-quibusdam.md) — 70 weekly downloads
- [@oridune/validator](https://npm.io/package/@oridune/validator.md) — 16 weekly downloads

## Recent versions

- 4.0.0 (latest) — 2021-04-21
- 3.0.0 — 2020-05-16
- 2.0.0 — 2019-04-21
- 1.1.0 — 2017-05-12
- 1.0.0 — 2017-05-12

## README

# to-semver

> Get an array of valid, sorted, and cleaned [semver](https://semver.org) versions from an array of strings

Can be useful when you have an unsorted list of versions, like git tags, and want to use them as semver versions.

## Install

```
$ npm install to-semver
```

## Usage

```js
import toSemver from 'to-semver';

toSemver([
	'v1.3.16',
	'v1.7.0',
	'test',
	'v1.6.9'
]);
/*
[
	'1.7.0',
	'1.6.9'
	'1.3.16'
]
*/
```

## API

### toSemver(versions, options?)

#### versions

Type: `string[]`

#### options

Type: `object`

##### includePrereleases

Type: `boolean`\
Default: `true`

Include prereleases, like `1.2.3-alpha.3`.

##### clean

Type: `boolean`\
Default: `true`

Clean versions. For example, `v1.3.0` → `1.3.0`.

## Related

- [latest-semver](https://github.com/sindresorhus/latest-semver) - Get the latest stable semver version from an array of versions
- [semver-regex](https://github.com/sindresorhus/semver-regex) - Regular expression for matching semver versions
- [semver-diff](https://github.com/sindresorhus/semver-diff) - Get the diff type of two semver versions: `0.0.1` `0.0.2` → `patch`
- [semver-truncate](https://github.com/sindresorhus/semver-truncate) - Truncate a semver version: `1.2.3` → `1.2.0`

---
_Source: https://npm.io/package/to-semver · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
