Skip to content

Releases: bigbite/build-tools

1.5.0

25 Nov 10:38
Compare
Choose a tag to compare

Individual entrypoints

As well as individual projects, it is now possible to define specific, or individual entrypoints to build by specifying them using @ symbol and separating entrypoints by + symbol.

Build all frontend entrypoints

build-tools build @frontend+editor

Build single project entrypoitns

build-tools build my-plugin@frontend

What's Changed

  • Add support for declaring specific endpoints to be built by @con322 in #120

New Contributors

Full Changelog: 1.4.1...1.5.0

1.4.1

08 Nov 11:28
Compare
Choose a tag to compare

What's Changed

  • Pass through asset info for hash removal in asset template by @ampersarnie in #126

Full Changelog: 1.4.0...1.4.1

1.4.0

30 Oct 10:18
8503456
Compare
Choose a tag to compare

What's Changed

This update changes the minification plugin away from the inbuilt Webpack flavour to Terser. The configuration used for Terser is the same that can be found in @wordpress/scripts which means we are now more capable of using translation functions and translators: comments effectively without workaround.

  • Translation functions (__(), _x(), _n(), etc) no longer get obfuscated.
  • translators: comments are no longer stripped from minified files.

Change Log

  • Change webpack config from native minification to use TerserPlugin. by @ampersarnie in #125

Full Changelog: 1.3.3...1.4.0

1.3.3

23 Sep 10:50
300e39b
Compare
Choose a tag to compare

What's Changed

Full Changelog: 1.3.2...1.3.3

1.3.2

13 Aug 15:51
1efebfd
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.3.1...1.3.2

1.3.1

21 Mar 13:12
Compare
Choose a tag to compare

What's Changed

  • Create directories that do not exist from asset-settings.php path by @ampersarnie in #99
  • Correct the nested structure for eslint config by @ampersarnie in #104

Full Changelog: 1.3.0...1.3.1

1.3.0

26 Jan 17:55
24b6cf3
Compare
Choose a tag to compare

Whats New?

TypeScript

1.3 introduces support for TypeScript within Build Tools with the aims of creating an easy to use implementation that requires as little configuration as possible to keep a consistent approach to projects that are written in TypeScript and are compiled using Build Tools.

TypeScript Default Config and Rules

The aim for bundling the config was to provide a sane setup for each developer that is working within TypeScript that will also provide consistency across all projects that utilise it.

The configuration for TypeScript can be found in the configs/tsconfig.json file.

There are also some image definition types that can be found in the configs/tsconfig/images.d.ts file.

An addition of TypeScript ESLint has also been included to ensure that we've support for ESLint within our builds.

Project tsconfig.json

As part of the aim is to provide a bundled configuration file, the tsconfig.json is defined within the project and can be found amongs other related configuration files within the /configs directory. The config file aims to provide a sane standard as recommended in the issue comment here.

To ensure the config file is visible by IDEs and any other related software for error and syntax highlighting, you need to define and extend the tsconfig.json within the root of your project.

{
  "extends": "@bigbite/build-tools/configs/tsconfig"
}

Customising tsconfig.json

There are a number of situations where you may need to customise or extend the tsconfig.json. This can be easily achieved by utilising the extends property and pointing to the build-tools config to use as the base.

{
  "extends": "@bigbite/build-tools/configs/tsconfig",
  "include": [
    "src/entrypoints",
    "src/types"
  ],
}

Please note that extending has additional effects when implementing include and exclude. Read the documentation for extends here.

Alternatively, if you need an entirely different tsconfig.json than the one that is provided, a tsconfig.json that is placed in the root of the project will be picket up by the build-tools, whether it is extended or not.

Performance Improvements

An improvement to project discovery has been added to speed up seeking of compatible projects. There should be no breaking changes or alterations for existing usages and implementations of build-tools.

What's Changed

Full Changelog: 1.2.5...1.3.0

1.3.0 β4

24 Aug 15:43
1a3a8b3
Compare
Choose a tag to compare
1.3.0 β4 Pre-release
Pre-release

Whats New?

TypeScript

1.3 introduces support for TypeScript within Build Tools with the aims of creating an easy to use implementation that requires as little configuration as possible to keep a consistent approach to projects that are written in TypeScript and are compiled using Build Tools.

TypeScript Default Config and Rules

The aim for bundling the config was to provide a sane setup for each developer that is working within TypeScript that will also provide consistency across all projects that utilise it.

The configuration for TypeScript can be found in the configs/tsconfig.json file.

There are also some image definition types that can be found in the configs/tsconfig/images.d.ts file.

An addition of TypeScript ESLint has also been included to ensure that we've support for ESLint within our builds.

Project tsconfig.json

As part of the aim is to provide a bundled configuration file, the tsconfig.json is defined within the project and can be found amongs other related configuration files within the /configs directory. The config file aims to provide a sane standard as recommended in the issue comment here.

To ensure the config file is visible by IDEs and any other related software for error and syntax highlighting, you need to define and extend the tsconfig.json within the root of your project.

{
  "extends": "@bigbite/build-tools/configs/tsconfig"
}

Customising tsconfig.json

There are a number of situations where you may need to customise or extend the tsconfig.json. This can be easily achieved by utilising the extends property and pointing to the build-tools config to use as the base.

{
  "extends": "@bigbite/build-tools/configs/tsconfig",
  "include": [
    "src/entrypoints",
    "src/types"
  ],
}

Please note that extending has additional effects when implementing include and exclude. Read the documentation for extends here.

Alternatively, if you need an entirely different tsconfig.json than the one that is provided, a tsconfig.json that is placed in the root of the project will be picket up by the build-tools, whether it is extended or not.

Performance Improvements

An improvement to project discovery has been added to speed up seeking of compatible projects. There should be no breaking changes or alterations for existing usages and implementations of build-tools.

What's Changed

Full Changelog: 1.3.0-beta.3...1.3.0-beta.4

1.2.5

24 Aug 15:38
5de2339
Compare
Choose a tag to compare

What's Changed

Change brings in allowance for an additional config for further compatibility with an editor.

VSCode (or other Editor) Config

While most packages and config will work out of the box there are a number of configs that need defining to give yourself the best compatibility with your Editor setup. These include:

  • Prettier
  • ESLint

To get these working correctly with your Editor you simply need to reference them in your package.json as seen below for prettier and eslintConfig keys.

{
  "name": "my-package",
  "version": "1.0.0",
  "prettier": "@bigbite/build-tools/configs/prettier",
  "eslintConfig": {
    "extends": "./node_modules/@bigbite/build-tools/configs/eslint",
  },
  "dependencies": {}
}

⚠️ This addition and path for ESLint is subject to change and be refined in consecutive releases.

Changelog

Full Changelog: 1.2.4...1.2.5

1.3.0 β3

21 Aug 10:51
Compare
Choose a tag to compare
1.3.0 β3 Pre-release
Pre-release

Whats New?

TypeScript

1.3 introduces support for TypeScript within Build Tools with the aims of creating an easy to use implementation that requires as little configuration as possible to keep a consistent approach to projects that are written in TypeScript and are compiled using Build Tools.

TypeScript Default Config and Rules

The aim for bundling the config was to provide a sane setup for each developer that is working within TypeScript that will also provide consistency across all projects that utilise it.

The configuration for TypeScript can be found in the configs/tsconfig.json file.

There are also some image definition types that can be found in the configs/tsconfig/images.d.ts file.

An addition of TypeScript ESLint has also been included to ensure that we've support for ESLint within our builds.

Project tsconfig.json

As part of the aim is to provide a bundled configuration file, the tsconfig.json is defined within the project and can be found amongs other related configuration files within the /configs directory. The config file aims to provide a sane standard as recommended in the issue comment here.

To ensure the config file is visible by IDEs and any other related software for error and syntax highlighting, you need to define and extend the tsconfig.json within the root of your project.

{
  "extends": "@bigbite/build-tools/configs/tsconfig"
}

Customising tsconfig.json

There are a number of situations where you may need to customise or extend the tsconfig.json. This can be easily achieved by utilising the extends property and pointing to the build-tools config to use as the base.

{
  "extends": "@bigbite/build-tools/configs/tsconfig",
  "include": [
    "src/entrypoints",
    "src/types"
  ],
}

Please note that extending has additional effects when implementing include and exclude. Read the documentation for extends here.

Alternatively, if you need an entirely different tsconfig.json than the one that is provided, a tsconfig.json that is placed in the root of the project will be picket up by the build-tools, whether it is extended or not.

Performance Improvements

An improvement to project discovery has been added to speed up seeking of compatible projects. There should be no breaking changes or alterations for existing usages and implementations of build-tools.

What's Changed

Full Changelog: 1.2.4...1.3.0-beta.3