Skip to content

Commit

Permalink
Merge branch 'release/4.0.1' into v4
Browse files Browse the repository at this point in the history
  • Loading branch information
khalwat committed Feb 9, 2024
2 parents c2dde4e + 2a5b340 commit 02606db
Show file tree
Hide file tree
Showing 302 changed files with 12,034 additions and 12,424 deletions.
1 change: 0 additions & 1 deletion .craftplugin

This file was deleted.

14 changes: 7 additions & 7 deletions .github/workflows/build-and-deploy-docs.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
name: Build and Deploy Docs
env:
DOCS_DEST_DIR: /webperf/
DOCS_DEST_DIR: /webperf/v4/
on:
push:
branches:
- v3
- v4
paths:
- 'docs/**'
pull_request:
branches:
- v3
- v4
paths:
- 'docs/**'
workflow_dispatch:
Expand All @@ -22,11 +22,11 @@ jobs:
strategy:
fail-fast: true
matrix:
node-version: [14.x]
node-version: [ 20.x ]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
Expand All @@ -35,7 +35,7 @@ jobs:
- name: rsync deployments
uses: burnett01/rsync-deployments@4.1
with:
switches: -avzr --delete
switches: -avzr
path: ./dist/
remote_path: ${{ secrets.NYS_DOCS_ROOT }}${{ env.DOCS_DEST_DIR }}
remote_host: ${{ secrets.NYS_DEPLOY_REMOTE_HOST }}
Expand Down
40 changes: 40 additions & 0 deletions .github/workflows/code-analysis.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Code Analysis

on:
pull_request: null
push:
branches:
- develop-v4
workflow_dispatch:
permissions:
contents: read
jobs:
code_analysis:
strategy:
fail-fast: false
matrix:
actions:
- name: 'PHPStan'
run: composer phpstan
- name: 'Coding Standards'
run: composer fix-cs
name: ${{ matrix.actions.name }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Cache Composer dependencies
uses: actions/cache@v4
with:
path: /tmp/composer-cache
key: ${{ runner.os }}-${{ hashFiles('**/composer.lock') }}
- name: Setup PHP
id: setup-php
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
extensions: 'ctype,curl,dom,iconv,imagick,intl,json,mbstring,openssl,pcre,pdo,reflection,spl,zip'
ini-values: post_max_size=256M, max_execution_time=180, memory_limit=512M
tools: composer:v2
- name: Install Composer dependencies
run: composer install --no-interaction --no-ansi --no-progress
- run: ${{ matrix.actions.run }}
21 changes: 21 additions & 0 deletions .github/workflows/create-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Create Release
run-name: Create release for ${{ github.event.client_payload.version }}

on:
repository_dispatch:
types:
- craftcms/new-release

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: ncipollo/release-action@v1
with:
body: ${{ github.event.client_payload.notes }}
makeLatest: ${{ github.event.client_payload.latest }}
name: ${{ github.event.client_payload.version }}
prerelease: ${{ github.event.client_payload.prerelease }}
tag: ${{ github.event.client_payload.tag }}
241 changes: 20 additions & 221 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
# Webperf Changelog

## 4.0.1 - 2024.02.09
### Added
* Add `phpstan` and `ecs` code linting
* Add `code-analysis.yaml` GitHub action

### Changed
* Switch over to Vite `^5.0.0` & Node `^20.0.0` for the buildchain
* Move to using `ServicesTrait` and add getter methods for services
* Add `allow-plugins` for CI
* Update the Test on Google PageSpeed Insights URL to `pagespeed.web.dev`
* Clean up search bar CSS
* Updated docs to use node 20 & a new sitemap plugin
* ECS code cleanup

### Fixed
* Ensure that `$driver` is nullable in the install migration
* Update to Boomerang Loader Snippet version 15 to modernize the loader, and eliminage `document.write` warnings
* Fix the sidebar CSS so the radial bar chart is not cropped, and there is padding around the text labels ([#51](/~https://github.com/nystudio107/craft-webperf/issues/51))
* Added the unused `static` to the Tailwind CSS `blocklist` to avoid a name collision with a Craft CSS class ([#1412](/~https://github.com/nystudio107/craft-seomatic/issues/1412))

## 4.0.0 - 2022.06.23
### Added
* Initial Craft CMS 4 release
Expand All @@ -24,224 +44,3 @@
### Added

* Initial Craft CMS 4 compatibility

## 1.0.27 - 2022.01.12

### Added

* Add `.gitattributes` & `CODEOWNERS`
* Add linting to build
* Add compression of assets
* Add bundle visualizer

## 1.0.26 - 2022.01.04

### Changed

* Updated the buildchain to use Node 16
* Changed buildchain to Vite from webpack 5

## 1.0.25 - 2021.07.17

### Changed

* Switched documentation system to VitePress

### Fixed

* Fixed an issue where an exception could be thrown in Craft CMS 3.7.x if no `element` existed when rendering the
sidebar (/~https://github.com/nystudio107/craft-webperf/issues/38)

## 1.0.24 - 2021.04.06

### Added

* Added `make update` to update NPM packages
* Added `make update-clean` to completely remove `node_modules/`, then update NPM packages

### Changed

* Use Tailwind CSS `^2.1.0` with JIT

## 1.0.23 - 2021.04.01

### Changed

* More consistent `makefile` build commands
* Use Tailwind 2.x & `@tailwindcss/jit`
* Move settings from the `composer.json` “extra” to the plugin main class
* Move the manifest service registration to the constructor
* Fix the broken Vue data tables

## 1.0.22 - 2021.03.03

### Changed

* Dockerized the buildchain, using `craft-plugin-manifest` for the webpack HMR bridge

## 1.0.21 - 2021.02.24

### Added

* Added support for both 8.x and 9.x versions of `league/csv` for peer compatibility

### Changed

* Updated build system infra

## 1.0.20 - 2021.02.09

### Changed

* Updated Axios to `^0.21.1`

### Fixed

* Fixed an incompatibility with PHP 8 caused by trait aliases not being fully qualified

## 1.0.19 - 2020.12.09

### Changed

* Moved the CSS/JS buildchain over to webpack 5
* Updated to latest npm deps

## 1.0.18 - 2020.03.11

### Fixed

* Fixed an issue where outlier samples were not being properly trimmed due to the computed threshold being non-integral

## 1.0.17 - 2019.12.11

### Security

* Throw an exception if an invalid sort field is passed into the controller methods, to eliminate a low-impact SQL
injection vulnerability

## 1.0.16 - 2019.12.09

### Changed

* Updated to the latest datepicker package

### Fixed

* Fixed a low-impact SQL injection vulnerability
* Fixed an issue where Webperf was erroneously showing "0 data samples" on the Dashboard

## 1.0.15 - 2019.11.19

### Changed

* Updated packages as per `npm audit fix`

## 1.0.14 - 2019.09.09

### Changed

* Replaced frontend api route with an actionUrl()

## 1.0.13 - 2018.08.07

### Changed

* Updated assets build to update to the latest npm packages
* Fixed a `bootstrap` error when viewing entries with Webperf sidebar is visible

## 1.0.12 - 2018.06.25

### Changed

* Fixed an issue where an error could be thrown rendering the Webperf Twig template if the title contained characters
that need escaping in a JavaScript context
* Added the frontend routes for `/retour` and `/seomatic/` to the default exclusion list
* Added database indexes to improve performance

## 1.0.11 - 2018.06.05

### Changed

* Fixed an issue where the sidebar preview would log JavaScript errors
* Updated to Tailwind CSS `^1.0.0`
* Updated to the latest ApexCharts, fixed issues due to changed APIs

## 1.0.10 - 2018.05.21

### Changed

* Updated to the latest version of the beacon (Boomerang 1.650.0), which fixes some issues
* Updated build system

## 1.0.9 - 2018.05.01

### Changed

* Removed vestigial debugging code
* Added a Sample Trimming Rate Limit that defaults to once per hour, to prevent the sample trimming from impacting
performance

## 1.0.8 - 2018.04.19

### Changed

* Fixed an issue where an empty **Exclude Patterns** table and the use of Project Config on Craft 3.1 or later could
cause an exception to be thrown when a 404 is thrown
* Fixed an issue where Webperf would fire during Live Preview when it shouldn't
* Updated Twig namespacing to be compliant with deprecated class aliases in 2.7.x

## 1.0.7 - 2019-03-15

### Changed

* Fixed a potential `Undefined property` in the MetricsController
* Don't allow editing of the plugin settings if `allowAdminChanges` is false
* Fixed an issue where an error would be thrown on the Performance Detail page if you were not running Craft 3.1 or
later

## 1.0.6 - 2019-02-28

### Changed

* Fixed a potential division by zero error in the memory limit recommendation under rare circumstances

## 1.0.5 - 2019-02-27

### Changed

* Fixed a `A non well formed numeric value` if you have your `memory_limit` set a certain way in your `php.ini`

## 1.0.4 - 2019-02-26

### Changed

* Fixed an issue with Craft 3.1.5 no longer allowing non-numeric values in the nav `badgeCount`
* Fixed a potential division by zero error in the memory limit recommendation

## 1.0.3 - 2019-02-22

### Changed

* Updated the beacon to remove `AutoXHR` and add in `MD5`
* If you're using Craft 3.1, Webperf will use
Craft [environmental variables](https://docs.craftcms.com/v3/config/environments.html#control-panel-settings) for
secrets

## 1.0.2 - 2019-02-20

### Changed

* Removed the unimplemented Widget stub

## 1.0.1 - 2019-02-12

### Changed

* Fixed the docs and changelog URLs in composer.json
* Price is now $59; I want as many people using Webperf as possible

## 1.0.0 - 2019-02-12

### Added

* Initial release
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/quality-score.png?b=v1)](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/?branch=v1) [![Code Coverage](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/coverage.png?b=v1)](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/?branch=v1) [![Build Status](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/build.png?b=v1)](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/build-status/v1) [![Code Intelligence Status](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/code-intelligence.svg?b=v1)](https://scrutinizer-ci.com/code-intelligence)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/quality-score.png?b=v4)](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/?branch=v4) [![Code Coverage](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/coverage.png?b=v4)](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/?branch=v4) [![Build Status](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/build.png?b=v4)](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/build-status/v4) [![Code Intelligence Status](https://scrutinizer-ci.com/g/nystudio107/craft-webperf/badges/code-intelligence.svg?b=v4)](https://scrutinizer-ci.com/code-intelligence)

# Webperf plugin for Craft CMS 4.x

Expand Down
28 changes: 28 additions & 0 deletions buildchain/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

node_modules
dist
dist-ssr
*.local

# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

# Misc directories & files
coverage/*
.stylelintcache
Loading

0 comments on commit 02606db

Please sign in to comment.