Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
bcf1fcb
Fix empty data in db field auth_token_expires_in
KarlsonComplete Oct 16, 2025
aff3555
Создали сущность с репой.
KarlsonComplete Oct 25, 2025
cacbf3a
.
KarlsonComplete Oct 26, 2025
d56734d
Merge pull request #55 from KarlsonComplete/fix/auth-token-expiry-emp…
mesilov Oct 26, 2025
8130f31
Add comments referencing issues and suppress static analysis warnings
mesilov Oct 28, 2025
5e22d0c
Add comments referencing issues and suppress static analysis warnings
mesilov Oct 28, 2025
76c5727
Merge pull request #61 from mesilov/bugfix/58-fix-user-id-refresh-token
mesilov Oct 28, 2025
5947c6c
.
KarlsonComplete Nov 2, 2025
6a9d007
.
KarlsonComplete Nov 4, 2025
77395cf
.
KarlsonComplete Nov 4, 2025
8d1dcad
.
KarlsonComplete Nov 6, 2025
84e6540
.
KarlsonComplete Nov 9, 2025
f47b26c
Merge pull request #65 from KarlsonComplete/fix/auth-token-expiry-emp…
camaxtly Nov 9, 2025
c7d243d
.
KarlsonComplete Nov 10, 2025
b54e85d
.
KarlsonComplete Nov 12, 2025
590dec7
Merge pull request #66 from mesilov/bugfix/58-fix-user-id-refresh-token
mesilov Nov 21, 2025
ba89b89
Add ApplicationSettings bounded context for issue #67
claude Nov 21, 2025
73d9662
Refactor ApplicationSettings for multi-scope support (issue #67)
claude Nov 21, 2025
52211f9
Refactor ApplicationSettings: Add tracking fields and event system (i…
claude Nov 21, 2025
e76e82c
Add soft-delete support and OnApplicationDelete UseCase (issue #67)
claude Nov 21, 2025
4cf3494
Fix: Add backward compatibility methods to Repository
claude Nov 21, 2025
704c22d
Add getEvents() method to AggregateRoot for testing
claude Nov 21, 2025
ea01d31
Align event handling with existing patterns
claude Nov 21, 2025
4f25ed8
Fix linter errors and move documentation
claude Nov 21, 2025
c656e51
Refactor ApplicationSettings: cleanup and improve architecture
claude Nov 21, 2025
4969132
Final refactoring: simplify Delete UseCase and add comprehensive tests
claude Nov 21, 2025
02e878e
Apply Rector and PHP-CS-Fixer code improvements
claude Nov 21, 2025
fc72254
Fix PHPStan errors in InstallSettingsTest
claude Nov 21, 2025
93bf656
Remove redundant repository methods and simplify API
claude Nov 21, 2025
f855474
Refactor ApplicationSettings: simplify API and add SettingsFetcher se…
claude Nov 21, 2025
20cffda
Refactor SettingsFetcher: rename getSetting to getItem and add except…
claude Nov 21, 2025
6450f18
Add findAllForInstallationByKey method to optimize SettingsFetcher
claude Nov 21, 2025
b85a052
Refactor ApplicationSettings: rename entity, separate Create/Update, …
claude Nov 21, 2025
92d8b1d
Enhance SettingsFetcher: add logger, rename method, add deserializati…
claude Nov 21, 2025
09ff03d
Apply Rector automatic code improvements
claude Nov 21, 2025
88ea683
Improve exception handling and serialization in ApplicationSettings
claude Nov 21, 2025
46de2a2
Fix #64: Change OnAppInstall Command to accept ApplicationStatus inst…
claude Nov 21, 2025
9c61e57
Remove unused ApplicationStatus import from OnAppInstall Handler
claude Nov 21, 2025
9e6ae22
Refactor ApplicationSettingsItem to generate UUID internally
claude Nov 21, 2025
b858438
Update Makefile to use Docker for composer license checker
mesilov Nov 23, 2025
35e7f52
Add TODO comments for SDK interface gaps and refactor Bitrix24 accoun…
mesilov Nov 23, 2025
df4a879
Refactor test variable names for clarity and update lambda typing in …
mesilov Nov 23, 2025
c665594
Refactor TODO comment formatting and lambda syntax in account filtering
mesilov Nov 23, 2025
2399fde
Update license-check workflow to use `composer-license-checker` directly
mesilov Nov 23, 2025
38bbbc3
Translate ApplicationSettings documentation to English, update code e…
mesilov Nov 23, 2025
8d3c5e6
Refactor repository tests: add contract tests for consistency, move i…
mesilov Nov 23, 2025
4e7521f
Update README.md: adjust formatting, add new ApplicationSettings sect…
mesilov Nov 23, 2025
a06a148
Merge remote-tracking branch 'origin/dev' into claude/fix-bitrix24-is…
mesilov Nov 23, 2025
ce211c1
Add PHP 8.4 support in composer requirements and GitHub workflows
mesilov Nov 23, 2025
f187837
Remove outdated TODO comment and redundant PHPStan ignore directive i…
mesilov Nov 23, 2025
6346c29
Refactor ApplicationSettings tests: introduce `flushChanges` method f…
mesilov Nov 23, 2025
50f36ab
Refactor repository methods: add `#[\Override]` annotations and remov…
mesilov Nov 23, 2025
1e7a1e1
Update CLAUDE.md: add steps for running linters and tests after each …
mesilov Nov 23, 2025
218b3f8
Refactor ApplicationSettingsItemRepository: remove EntityRepository i…
mesilov Nov 23, 2025
8ba250e
Replace custom exceptions with SDK standard exceptions for consistenc…
mesilov Nov 24, 2025
aa39517
Rename `InstallSettings` to `DefaultSettingsInstaller` for improved s…
mesilov Nov 24, 2025
7aec333
Merge pull request #68 from mesilov/claude/fix-bitrix24-issue-67-01Pg…
mesilov Nov 24, 2025
b587d28
Update CHANGELOG.md: add release notes for version 0.3.0, detailing n…
mesilov Nov 24, 2025
535a2ad
Merge pull request #75 from mesilov/dev
mesilov Nov 25, 2025
412902c
.
KarlsonComplete Nov 30, 2025
558c283
.
KarlsonComplete Dec 7, 2025
8dc8cf2
.
KarlsonComplete Dec 7, 2025
3741842
.
KarlsonComplete Dec 7, 2025
f4bc7b6
Merge pull request #57 from KarlsonComplete/add-contact-persons
camaxtly Dec 7, 2025
961a68f
.
KarlsonComplete Dec 8, 2025
b159979
Merge dev branch and resolve conflicts
claude Dec 11, 2025
f5b7c8e
Update CHANGELOG.md for issue #64
claude Dec 11, 2025
76ca62e
Fix critical null check issue in OnAppInstall Handler
claude Dec 11, 2025
eaff8f4
Fix PHPUnit exit code 255 by excluding tests with missing SDK depende…
claude Dec 11, 2025
c0d5d9e
.
KarlsonComplete Dec 11, 2025
8df8674
Add symfony/var-exporter to dev dependencies
claude Dec 12, 2025
89cc4d7
Merge pull request #69 from mesilov/claude/fix-bitrix24-issue-64-01Aq…
mesilov Dec 12, 2025
405eb01
Merge branch 'main' into dev
mesilov Dec 12, 2025
cdb31d4
.
KarlsonComplete Dec 12, 2025
09dafb9
.
KarlsonComplete Dec 13, 2025
6c330fc
.
KarlsonComplete Dec 13, 2025
29267e5
Merge branch 'dev' into add-contact-persons
camaxtly Dec 14, 2025
6552b16
Merge pull request #81 from mesilov/add-contact-persons
camaxtly Dec 14, 2025
4b91351
Merge branch 'dev' into add-contact-persons-use-case
camaxtly Dec 14, 2025
d083cf1
.
KarlsonComplete Dec 16, 2025
5d67d98
Merge remote-tracking branch 'origin/add-contact-persons-use-case' in…
KarlsonComplete Dec 16, 2025
fe89ec4
.
KarlsonComplete Dec 17, 2025
289aba9
.
KarlsonComplete Dec 19, 2025
601fbd4
.
KarlsonComplete Dec 20, 2025
c4f727a
.
KarlsonComplete Dec 20, 2025
896cdf9
.
KarlsonComplete Dec 21, 2025
8e43b54
Remove Install/Unlink PartnerContactPerson use cases and related tests
KarlsonComplete Dec 22, 2025
bf37bf5
Add email validation and verification timestamp handling in ContactPe…
KarlsonComplete Dec 24, 2025
8a548d6
Validate UUID instance for unlink methods, enhance phone verification…
KarlsonComplete Dec 26, 2025
42311c1
Remove redundant phone number validation, streamline `ContactPerson` …
KarlsonComplete Jan 4, 2026
7b2551e
Enhance phone and email verification handling, streamline validation,…
KarlsonComplete Jan 7, 2026
4b585e2
Refactor namespaces for consistency, enhance mobile number validation…
KarlsonComplete Jan 9, 2026
a5d03de
Update email and mobile phone change methods to reset verification st…
KarlsonComplete Jan 9, 2026
81720e9
Update `UnlinkContactPerson` use case to include application installa…
KarlsonComplete Jan 12, 2026
5864fc1
Refactor exception handling and logging across ContactPerson use case…
KarlsonComplete Jan 15, 2026
688ce0f
Replace UUID instance checks with null checks in `unlinkContactPerson…
KarlsonComplete Jan 18, 2026
76c7c2e
Refactor handling of email and phone verification, streamline null ch…
KarlsonComplete Jan 20, 2026
1c91009
Refactor tests and handlers for improved consistency, streamline null…
KarlsonComplete Jan 23, 2026
67238ed
Refactor and enhance test coverage for email and phone verification u…
KarlsonComplete Jan 27, 2026
d8fe02b
Add comprehensive unit tests for various `Command` classes, improve e…
KarlsonComplete Jan 28, 2026
1498195
Remove outdated unit tests for unused `UnlinkContactPerson` and `Mark…
KarlsonComplete Feb 2, 2026
e22af57
Refactor tests for improved consistency: rename variables, enhance as…
KarlsonComplete Feb 3, 2026
de9ed5c
Improve email validation and trimming logic in `MarkEmailAsVerified` …
KarlsonComplete Feb 3, 2026
cf789f2
Remove unused repository methods `deleteByApplicationInstallationId` …
KarlsonComplete Feb 8, 2026
9f69eb7
Normalize email handling in `ContactPerson` entity and related use ca…
KarlsonComplete Feb 12, 2026
e04d8b3
Refactor: normalize parameter naming, add missing doc punctuation, an…
KarlsonComplete Feb 12, 2026
91f2c32
add memberId
KarlsonComplete Feb 17, 2026
9a8fa68
Refactor: rename `JournalContext` to `Context`, update related tests …
KarlsonComplete Feb 19, 2026
a574def
Refactor: move `Domain` value object to `Kernel` namespace, update re…
KarlsonComplete Feb 25, 2026
d4a44a8
Refactor: fix spacing issues, optimize imports, and improve code form…
KarlsonComplete Feb 25, 2026
025434a
Update `bitrix24/b24phpsdk` dependency to stable version `^3` in `com…
KarlsonComplete Mar 2, 2026
da4bc91
Refactor Makefile: align structure and target naming with `b24phpsdk …
mesilov Mar 3, 2026
755e885
Update composer.json: adjust dependencies to specific versions for be…
mesilov Mar 3, 2026
0f8085d
Fix failing unit tests in `SettingsFetcherTest`: add missing `symfony…
mesilov Mar 3, 2026
c09f015
Restore functional tests: update `ContactPerson` method signatures to…
mesilov Mar 3, 2026
4e2934a
Remove PHP 8.3 from test workflows: update functional and unit test c…
mesilov Mar 3, 2026
24d6aa9
Simplify `isPartner()` implementation: replace fully qualified class …
mesilov Mar 3, 2026
d7e47b8
Introduce GHCR-based dev/CI images for `php-cli`: add CI workflows to…
mesilov Mar 3, 2026
5fb49c0
Improve CI workflows: integrate `php-cli` GHCR image across all workf…
mesilov Mar 3, 2026
7936f7a
Add comment to `php-cli` Dockerfile to indicate DEV image build
mesilov Mar 3, 2026
b73538b
Update CHANGELOG.md: add notes on Makefile changes aligning with `b24…
mesilov Mar 3, 2026
20a2848
Merge pull request #87 from mesilov/feature/884-bump-b24phpsdk
mesilov Mar 3, 2026
4324cf9
Merge branch 'dev' into add-contact-persons-use-case
KarlsonComplete Mar 4, 2026
9856632
Fix failing unit and functional tests after `b24phpsdk` update: updat…
mesilov Mar 4, 2026
351330a
Merge pull request #88 from mesilov/add-contact-persons-use-case
mesilov Mar 4, 2026
af9b8b7
Update CHANGELOG.md for v0.4.0: document new `ContactPersons` use cas…
mesilov Mar 4, 2026
1ef1a03
Merge branch 'dev' into claude/implement-issue-72-01PyCT5q1ySkhYBu5eh…
KarlsonComplete Mar 7, 2026
1d63aa3
Remove `JournalAdminController` and `JournalItemReadRepository`, upda…
KarlsonComplete Mar 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 58 additions & 0 deletions .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Build Docker image"

on:
push:
paths:
- "docker/php-cli/Dockerfile"
workflow_dispatch:

concurrency:
group: docker-build
cancel-in-progress: true

jobs:
build:
name: "Build & push php-cli"
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: "Get metadata"
id: meta
run: |
echo "short_sha=${GITHUB_SHA::7}" >> "$GITHUB_OUTPUT"
echo "rfc3339=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> "$GITHUB_OUTPUT"

- name: "Checkout"
uses: actions/checkout@v4

- name: "Login to GitHub Container Registry"
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: "Setup Docker QEMU"
uses: docker/setup-qemu-action@v3

- name: "Setup Docker Buildx"
uses: docker/setup-buildx-action@v3

- name: "Build & push image"
uses: docker/build-push-action@v6
with:
context: ./docker/php-cli
platforms: linux/amd64,linux/arm64
push: true
tags: |
ghcr.io/mesilov/bitrix24-php-lib:php-cli
ghcr.io/mesilov/bitrix24-php-lib:php-cli-${{ steps.meta.outputs.short_sha }}
labels: |
org.opencontainers.image.source=${{ github.event.repository.html_url }}
org.opencontainers.image.created=${{ steps.meta.outputs.rfc3339 }}
org.opencontainers.image.revision=${{ github.sha }}
cache-from: type=gha
cache-to: type=gha,mode=max
42 changes: 15 additions & 27 deletions .github/workflows/license-check.yml
Original file line number Diff line number Diff line change
@@ -1,43 +1,31 @@
name: "Allowed licenses checks"

on:
push:
pull_request:

jobs:
static-analysis:
name: "composer-license-checker"
runs-on: ${{ matrix.operating-system }}

strategy:
fail-fast: false
matrix:
php-version:
- "8.3"
dependencies: [ highest ]
operating-system: [ ubuntu-latest]
runs-on: ubuntu-latest
permissions:
contents: read
packages: read
container:
image: ghcr.io/mesilov/bitrix24-php-lib:php-cli
credentials:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

steps:
- name: "Checkout"
uses: "actions/checkout@v2"

- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
php-version: "${{ matrix.php-version }}"
extensions: json, bcmath, curl, intl, mbstring
tools: composer:v2

- name: "Install lowest dependencies"
if: ${{ matrix.dependencies == 'lowest' }}
run: "composer update --prefer-lowest --no-interaction --no-progress --no-suggest"
uses: actions/checkout@v4

- name: "Install highest dependencies"
if: ${{ matrix.dependencies == 'highest' }}
run: "composer update --no-interaction --no-progress --no-suggest"
- name: "Install dependencies"
run: composer update --no-interaction --no-progress --no-suggest

- name: "composer-license-checker"
run: "make lint-allowed-licenses"
run: php vendor/bin/composer-license-checker

- name: "is allowed licenses check succeeded"
if: ${{ success() }}
Expand All @@ -47,4 +35,4 @@ jobs:
- name: "is allowed licenses check failed"
if: ${{ failure() }}
run: |
echo '::error:: ❗️ allowed licenses check failed (╯°益°)╯彡┻━┻'
echo '::error:: ❗️ allowed licenses check failed (╯°益°)╯彡┻━┻'
45 changes: 16 additions & 29 deletions .github/workflows/lint-cs-fixer.yml
Original file line number Diff line number Diff line change
@@ -1,44 +1,31 @@
name: Lint CS-Fixer

on:
push:
pull_request:

name: Lint CS-Fixer

jobs:
static-analysis:
name: "CS-Fixer"
runs-on: ${{ matrix.operating-system }}

strategy:
fail-fast: false
matrix:
php-version:
- "8.3"
dependencies: [ highest ]
operating-system: [ ubuntu-latest]
runs-on: ubuntu-latest
permissions:
contents: read
packages: read
container:
image: ghcr.io/mesilov/bitrix24-php-lib:php-cli
credentials:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

steps:
- name: "Checkout"
uses: "actions/checkout@v2"

- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
php-version: "${{ matrix.php-version }}"
extensions: json, bcmath, curl, intl, mbstring
tools: composer:v2

- name: "Install lowest dependencies"
if: ${{ matrix.dependencies == 'lowest' }}
run: "composer update --prefer-lowest --no-interaction --no-progress --no-suggest"
uses: actions/checkout@v4

- name: "Install highest dependencies"
if: ${{ matrix.dependencies == 'highest' }}
run: "composer update --no-interaction --no-progress --no-suggest"
- name: "Install dependencies"
run: composer update --no-interaction --no-progress --no-suggest

- name: "CS-Fixer"
run: "vendor/bin/php-cs-fixer fix --dry-run --diff --verbose"
run: vendor/bin/php-cs-fixer fix --dry-run --diff --verbose

- name: "is CS-Fixer check succeeded"
if: ${{ success() }}
Expand All @@ -48,4 +35,4 @@ jobs:
- name: "is CS-Fixer check failed"
if: ${{ failure() }}
run: |
echo '::error:: ❗️ CS-Fixer check failed (╯°益°)╯彡┻━┻'
echo '::error:: ❗️ CS-Fixer check failed (╯°益°)╯彡┻━┻'
45 changes: 16 additions & 29 deletions .github/workflows/lint-phpstan.yml
Original file line number Diff line number Diff line change
@@ -1,44 +1,31 @@
name: PHPStan lint checks

on:
push:
pull_request:

name: PHPStan lint checks

jobs:
static-analysis:
name: "PHPStan"
runs-on: ${{ matrix.operating-system }}

strategy:
fail-fast: false
matrix:
php-version:
- "8.3"
dependencies: [ highest ]
operating-system: [ ubuntu-latest]
runs-on: ubuntu-latest
permissions:
contents: read
packages: read
container:
image: ghcr.io/mesilov/bitrix24-php-lib:php-cli
credentials:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

steps:
- name: "Checkout"
uses: "actions/checkout@v2"

- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
php-version: "${{ matrix.php-version }}"
extensions: json, bcmath, curl, intl, mbstring
tools: composer:v2

- name: "Install lowest dependencies"
if: ${{ matrix.dependencies == 'lowest' }}
run: "composer update --prefer-lowest --no-interaction --no-progress --no-suggest"
uses: actions/checkout@v4

- name: "Install highest dependencies"
if: ${{ matrix.dependencies == 'highest' }}
run: "composer update --no-interaction --no-progress --no-suggest"
- name: "Install dependencies"
run: composer update --no-interaction --no-progress --no-suggest

- name: "PHPStan"
run: "vendor/bin/phpstan --memory-limit=2G analyse"
run: vendor/bin/phpstan --memory-limit=2G analyse

- name: "is PHPStan check succeeded"
if: ${{ success() }}
Expand All @@ -48,4 +35,4 @@ jobs:
- name: "is PHPStan check failed"
if: ${{ failure() }}
run: |
echo '::error:: ❗️ PHPStan check failed (╯°益°)╯彡┻━┻'
echo '::error:: ❗️ PHPStan check failed (╯°益°)╯彡┻━┻'
45 changes: 16 additions & 29 deletions .github/workflows/lint-rector.yml
Original file line number Diff line number Diff line change
@@ -1,44 +1,31 @@
name: Rector lint checks

on:
push:
pull_request:

name: Rector lint checks

jobs:
static-analysis:
name: "Rector"
runs-on: ${{ matrix.operating-system }}

strategy:
fail-fast: false
matrix:
php-version:
- "8.3"
dependencies: [ highest ]
operating-system: [ ubuntu-latest]
runs-on: ubuntu-latest
permissions:
contents: read
packages: read
container:
image: ghcr.io/mesilov/bitrix24-php-lib:php-cli
credentials:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

steps:
- name: "Checkout"
uses: "actions/checkout@v2"

- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
php-version: "${{ matrix.php-version }}"
extensions: json, bcmath, curl, intl, mbstring
tools: composer:v2

- name: "Install lowest dependencies"
if: ${{ matrix.dependencies == 'lowest' }}
run: "composer update --prefer-lowest --no-interaction --no-progress --no-suggest"
uses: actions/checkout@v4

- name: "Install highest dependencies"
if: ${{ matrix.dependencies == 'highest' }}
run: "composer update --no-interaction --no-progress --no-suggest"
- name: "Install dependencies"
run: composer update --no-interaction --no-progress --no-suggest

- name: "Rector"
run: "vendor/bin/rector process --dry-run"
run: vendor/bin/rector process --dry-run

- name: "is Rector check succeeded"
if: ${{ success() }}
Expand All @@ -48,4 +35,4 @@ jobs:
- name: "is PHPStan check failed"
if: ${{ failure() }}
run: |
echo '::error:: ❗️ Rector check failed (╯°益°)╯彡┻━┻'
echo '::error:: ❗️ Rector check failed (╯°益°)╯彡┻━┻'
Loading
Loading