From 8549c292ebed7d39bfb79707b7ee5c409342bcc0 Mon Sep 17 00:00:00 2001 From: Joshua Estes Date: Sat, 21 Oct 2023 11:19:12 -0400 Subject: [PATCH] Docs and various bug fixes (#30) --- .github/labeler.yml | 14 +------------ .github/workflows/labeler.yml | 1 + Makefile | 23 ++++++++++++--------- docs/bard/index.md | 38 +++++++++++++++++++++++++++++++++++ phpunit.xml.dist | 20 ++++++++++++++---- 5 files changed, 69 insertions(+), 27 deletions(-) create mode 100644 docs/bard/index.md diff --git a/.github/labeler.yml b/.github/labeler.yml index 1f63b1ab..d0b0d86a 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -1,50 +1,38 @@ -docs: +documentation: - docs/* Bard: - docs/bard/* - - packages/bard/* - src/SonsOfPHP/Bard/* Clock: - docs/components/clock/* - - packages/clock/* - src/SonsOfPHP/Component/Clock/* CQRS: - docs/components/cqrs/* - - packages/cqrs/* - - packages/cqrs-symfony/* - src/SonsOfPHP/**/Cqrs/* EventDispatcher: - docs/components/event-dispatcher/* - - packages/event-dispatcher/* - src/SonsOfPHP/**/EventDispatcher/* EventSourcing: - docs/components/event-sourcing/* - - packages/event-sourcing/* - - packages/event-sourcing-doctrine/* - - packages/event-sourcing-symfony/* - src/SonsOfPHP/**/EventSourcing/* FeatureToggle: - docs/components/feature-toggle/* - - packages/feature-toggle/* - src/SonsOfPHP/**/FeatureToggle/* JSON: - docs/components/json/* - - packages/json/* - src/SonsOfPHP/**/Json/* Money: - docs/components/money/* - - packages/money/* - src/SonsOfPHP/**/Money/* Version: - docs/components/version/* - - packages/version/* - src/SonsOfPHP/**/Version/* diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml index 4184cc81..f347a2ec 100644 --- a/.github/workflows/labeler.yml +++ b/.github/workflows/labeler.yml @@ -12,3 +12,4 @@ jobs: - uses: actions/labeler@v4 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" + sync-labels: true diff --git a/Makefile b/Makefile index ab6e1b1b..d799a99b 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ PHP_CS_FIXER = tools/php-cs-fixer/vendor/bin/php-cs-fixer PHPUNIT = tools/phpunit/vendor/bin/phpunit PSALM = tools/psalm/vendor/bin/psalm PSALM_BASELINE_FILE = psalm-baseline.xml -BARD = packages/bard/bin/bard +BARD = src/SonsOfPHP/Bard/bin/bard COVERAGE_DIR = docs/coverage @@ -30,10 +30,13 @@ upgrade: tools-upgrade composer-install: composer.json # Install Dependencies via Composer XDEBUG_MODE=off $(COMPOSER) install --no-interaction --prefer-dist --optimize-autoloader - XDEBUG_MODE=off $(COMPOSER) install --working-dir=packages/bard --no-interaction --prefer-dist --optimize-autoloader + XDEBUG_MODE=off $(COMPOSER) install --working-dir=src/SonsOfPHP/Bard --no-interaction --prefer-dist --optimize-autoloader purge: # Purge vendor and lock files - rm -rf vendor/ packages/*/vendor/ packages/*/composer.lock + rm -rf vendor/ src/SonsOfPHP/Bard/vendor/ src/SonsOfPHP/Bard/composer.lock + rm -rf vendor/ src/SonsOfPHP/Bridge/*/vendor/ src/SonsOfPHP/Bridge/*/composer.lock + rm -rf vendor/ src/SonsOfPHP/Bundle/*/vendor/ src/SonsOfPHP/Bundle/*/composer.lock + rm -rf vendor/ src/SonsOfPHP/Component/*/vendor/ src/SonsOfPHP/Component/*/composer.lock test: ## Run PHPUnit Tests XDEBUG_MODE=off $(PHP) -dxdebug.mode=off $(PHPUNIT) --order-by=defects @@ -49,7 +52,7 @@ phpunit-upgrade: lint: lint-php ## Lint files lint-php: # lint php files - @! find packages/ -name "*.php" -not -path "packages/**/vendor/*" | xargs -I{} $(PHP) -l '{}' | grep -v "No syntax errors detected" + find src -name "*.php" -not -path "src/**/vendor/*" | xargs -I{} $(PHP) -l '{}' coverage: ## Build Code Coverage Report XDEBUG_MODE=coverage $(PHP) -dxdebug.mode=coverage $(PHPUNIT) --coverage-html $(COVERAGE_DIR) @@ -85,21 +88,21 @@ tools-install: psalm-install php-cs-fixer-install phpunit-install tools-upgrade: psalm-upgrade php-cs-fixer-upgrade phpunit-upgrade -# Install deps for building docs -docs-install: +## Documentation +docs-install: ## Install deps for building docs pip install mkdocs pip install mkdocs-material -docs-upgrade: +docs-upgrade: ## upgrade mkdocs pip install --upgrade mkdocs-material -docs-watch: # Preview documentation locally +docs-watch: ## Preview documentation locally $(MKDOCS) serve -docs-build: # Build Site +docs-build: ## Build Site $(MKDOCS) build -## Packages +## Package Management packages-install: ## Runs `composer install` on each package $(BARD) install -n -vvv diff --git a/docs/bard/index.md b/docs/bard/index.md new file mode 100644 index 00000000..8bda479a --- /dev/null +++ b/docs/bard/index.md @@ -0,0 +1,38 @@ +--- +title: Bard +--- + +# Bard + +Bard is used to manage monorepos. + +## Usage + +Initialize a new bard.json file + +```shell +bard init +``` + +Add repositories + +```shell +bard add path/to/code repoUrl +``` + +Push changes to read-only repos + +```shell +bard push +``` + +Create a release + +```shell +bard release major +bard release minor +bard release patch +``` + +Bard will track the versions so you can just use the keywords: major, minor, +patch. diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 2b44cfa7..ed568685 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -11,7 +11,11 @@ - packages/*/Tests + + src/SonsOfPHP/Bridge/Doctrine/*/Tests + src/SonsOfPHP/Bridge/Symfony/*/Tests + src/SonsOfPHP/Bundle/*/Tests + src/SonsOfPHP/Component/*/Tests @@ -19,11 +23,19 @@ - packages/* + src/* - packages/*/Tests - packages/*/vendor + + src/SonsOfPHP/Bard/vendor + src/SonsOfPHP/Bridge/Doctrine/*/Tests + src/SonsOfPHP/Bridge/Doctrine/*/vendor + src/SonsOfPHP/Bridge/Symfony/*/Tests + src/SonsOfPHP/Bridge/Symfony/*/vendor + src/SonsOfPHP/Bundle/*/Tests + src/SonsOfPHP/Bundle/*/vendor + src/SonsOfPHP/Component/*/Tests + src/SonsOfPHP/Component/*/vendor