Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@knapsack-pro/core

Package Overview
Dependencies
Maintainers
4
Versions
40
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@knapsack-pro/core - npm Package Compare versions

Comparing version 5.1.0 to 5.2.0

14

package.json
{
"name": "@knapsack-pro/core",
"version": "5.1.0",
"version": "5.2.0",
"description": "Knapsack Pro Core library splits tests across CI nodes and makes sure that tests will run in optimal time on each CI node. This library gives core features like communication with KnapsackPro.com API. This library is a dependency for other projects specific for particular test runner.",

@@ -34,8 +34,7 @@ "keywords": [

"eslint:format": "eslint . --ext .ts --fix",
"prettier:check": "prettier --check .",
"prettier:format": "prettier --config .prettierrc.json 'src/**/*.ts' --write",
"prettier:check": "prettier --config .prettierrc.json --check .",
"prettier:format": "prettier --config .prettierrc.json --write .",
"test": "jest --verbose",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage",
"doctoc": "doctoc --title \"## Table of Contents\" README.md"
"test:coverage": "jest --coverage"
},

@@ -48,6 +47,6 @@ "files": [

"type": "git",
"url": "https://github.com/KnapsackPro/knapsack-pro-core-js.git"
"url": "https://github.com/KnapsackPro/knapsack-pro-js.git"
},
"bugs": {
"url": "https://github.com/KnapsackPro/knapsack-pro-core-js/issues"
"url": "https://github.com/KnapsackPro/knapsack-pro-js/issues"
},

@@ -68,3 +67,2 @@ "dependencies": {

"del": "^6.1.1",
"doctoc": "^2.2.0",
"eslint": "^7.32.0",

@@ -71,0 +69,0 @@ "eslint-config-airbnb-base": "^15.0.0",

# @knapsack-pro/core
[![CircleCI](https://circleci.com/gh/KnapsackPro/knapsack-pro-core-js.svg?style=svg)](https://circleci.com/gh/KnapsackPro/knapsack-pro-core-js)
<p align="center">
<a href="https://knapsackpro.com?utm_source=github&utm_medium=readme&utm_campaign=knapsack-pro-core&utm_content=hero_logo">
<img alt="Knapsack Pro" src="./.github/assets/knapsack.png" width="300" height="300" style="max-width: 100%;" />
</a>
</p>
`@knapsack-pro/core` is JS npm package with core features for [Knapsack Pro API](https://docs.knapsackpro.com/api/).
Learn how to run your tests faster with optimal test suite parallelisation using [Knapsack Pro](https://knapsackpro.com).
<h3 align="center">Speed up your tests</h3>
<p align="center">Run your 1-hour test suite in 2 minutes with optimal parallelisation on your existing CI infrastructure</p>
This package is the dependency of [Knapsack Pro clients in JavaScript](https://docs.knapsackpro.com/integration/).
---
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<div align="center">
<a href="https://circleci.com/gh/KnapsackPro/knapsack-pro-core-js">
<img alt="Circle CI" src="https://circleci.com/gh/KnapsackPro/knapsack-pro-core-js.svg?style=svg" />
</a>
</div>
## Table of Contents
<br />
<br />
- [FAQ](#faq)
- [Development](#development)
- [Requirements](#requirements)
- [Setup](#setup)
- [Publishing](#publishing)
Knapsack Pro wraps your [current test runner(s)](https://docs.knapsackpro.com/) and works with your existing CI infrastructure to parallelize tests optimally:
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
- Dynamically splits your tests based on up-to-date test execution data
- Is designed from the ground up for CI and supports all of them
- Tracks your CI builds to detect bottlenecks
- Does not have access to your source code and collects minimal test data
- Enables you to export historical metrics about your CI builds
- Replaces local dependencies like Redis with an API and runs your tests regardless of network problems
## FAQ
## Installation
[FAQ for Knapsack Pro JavaScript clients can be found here](https://knapsackpro.com/faq).
See the [docs](https://docs.knapsackpro.com/) to get started:
## Development
<div align="center">
<a href="https://docs.knapsackpro.com/">
<img alt="Install button" src="./.github/assets/install-button.png" width="116" height="50" />
</a>
</div>
### Requirements
## Dependents
You can use [NVM](https://github.com/nvm-sh/nvm) to manage Node version in development.
- [@knapsack-pro/jest](https://github.com/KnapsackPro/knapsack-pro-js/tree/setup/packages/jest)
- [@knapsack-pro/cypress](https://github.com/KnapsackPro/knapsack-pro-js/tree/setup/packages/cypress)
- `>= Node 18.13.0 LTS`
## Contributing
### Setup
Follow the steps in the [root README.md](https://github.com/KnapsackPro/knapsack-pro-js#contributing) to set up the project.
**Follow below steps or use `bin/setup_development` script to take care of steps 1-3.**
You can compile TypeScript in watch mode from the root folder with:
1. Install dependencies:
```bash
npm start -w packages/core
```
```
$ npm install
```
### Publishing
2. Compile TypeScript code to `lib` directory by running:
1. `cd packages/core`
```
$ npm start
```
1. Sign in to the npm registry with:
3. Register `@knapsack-pro/core` package globally in your local system. This way we will be able to develop other npm packages dependent on it:
```bash
npm adduser
```
$ npm link
```
4. Set up your IDE:
1. Before releasing a new version of the package, please update `CHANGELOG.md` with [`github_changelog_generator`](https://github.com/github-changelog-generator/github-changelog-generator):
- Visual Studio Code
```bash
gem install github_changelog_generator
- Install the following plugins:
- [Prettier - Code formatter](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)
- [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint)
- [EditorConfig for VS Code](https://marketplace.visualstudio.com/items?itemName=EditorConfig.EditorConfig)
- Go to `File > Preferences > Settings > Text Editor > Formatting`
Turn on `Format On Save` checkbox.
From now on, every change in code base will be automatically formatted by [Prettier](https://prettier.io/). [ESLint](https://eslint.org/) shows errors and warnings in VSCode.
5. Write some code.
### Publishing
1. Sign in to npm registry with command:
# generate CHANGELOG.md
github_changelog_generator --user KnapsackPro --project knapsack-pro-js --pr-wo-labels --issues-wo-labels --include-labels @knapsack-pro/core --since-tag @knapsack-pro/core@5.1.0 --exclude-tags-regex "@knapsack-pro\/(jest|cypress)@.*"
git commit -am "Update CHANGELOG.md"
git push origin master
```
$ npm adduser
```
2. Before releasing a new version of package please update `CHANGELOG.md` with [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator):
1. If you have added new files to the repository, and they should be part of the released npm package, please ensure they are included in the `files` array in `package.json`.
```
$ gem install github_changelog_generator
1. Compile the project:
# generate CHANGELOG.md
$ github_changelog_generator --user KnapsackPro --project knapsack-pro-core-js
$ git commit -am "Update CHANGELOG.md"
$ git push origin master
```bash
npm run build
```
3. If you have added new files to the repository and they should be part of the released npm package then please ensure they are included in `files` array in `package.json`.
1. In order to [bump the version of the package](https://docs.npmjs.com/cli/version) run the command below. It will also create a version commit and tag for the release:
4. If you have changed any headers in `README.md` please refresh table of contents with:
```bash
# Bump patch version 0.0.x
npm version patch --no-commit-hooks --tag-version-prefix=@knapsack-pro/core@
# Bump minor version 0.x.0
npm version minor --no-commit-hooks --tag-version-prefix=@knapsack-pro/core@
```
$ npm run doctoc
```
5. Compile project:
```bash
git commit -am x.x.x
git tag @knapsack-pro/core@x.x.x
```
$ npm run build
```
6. In order to [bump version of the package](https://docs.npmjs.com/cli/version) run below command. It will also create a version commit and tag for the release:
1. Push the commit and tag:
```bash
git push origin master --tags
```
# bump patch version 0.0.x
$ npm version patch
# bump minor version 0.x.0
$ npm version minor
```
1. When the git tag is on Github, you can update `CHANGELOG.md`:
7. Push to git repository created commit and tag:
```bash
github_changelog_generator --user KnapsackPro --project knapsack-pro-js --pr-wo-labels --issues-wo-labels --include-labels @knapsack-pro/core --since-tag @knapsack-pro/core@5.1.0 --exclude-tags-regex "@knapsack-pro\/(jest|cypress)@.*"
git commit -am "Update CHANGELOG.md"
git push origin master
```
$ git push origin master --tags
```
8. Now when git tag is on Github you can update `CHANGELOG.md` again.
1. Publish the package to the npm registry:
```bash
npm publish
```
$ github_changelog_generator --user KnapsackPro --project knapsack-pro-core-js
$ git commit -am "Update CHANGELOG.md"
$ git push origin master
```
9. Now you can publish package to npm registry:
1. Update:
```
$ npm publish
```
- [@knapsack-pro/jest](https://github.com/KnapsackPro/knapsack-pro-js/tree/setup/packages/jest)
- [@knapsack-pro/cypress](https://github.com/KnapsackPro/knapsack-pro-js/tree/setup/packages/cypress)
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc