This file contains changelogs.
- Removed Rule
@mr-linter/has_all_labels
- Removed unnecessary polyfills
- Catch exception on non-exists notification messenger
- Added evaluator
isNumber
- Added evaluator
containsNumber
- Fixed rule "@mr-linter/has_any_labels" on empty labels
- Added Rule
@mr-linter/description_template
for check description on defined template
- Removed rule
@mr-linter/has_any_labels_of
- Added an Evaluator
notIntersect
to check that the array does not intersect with the user array.
- Added Rule
@mr-linter/changelog_has_new_release
on contains new release
- Removed Rule
@mr-linter/update_changelog
- Resolve rule params with default value
- Added parameter
projectCodes
for rules@mr-linter/branch_starts_with_task_number
,@mr-linter/jira/has_issue_link
,@mr-linter/title_starts_with_task_number
,@mr-linter/youtrack/has_issue_link
for allow many specified project codes and any project code if parameter 'projectCodes' is empty
- Rule @mr-linter/branch_starts_with_task_number: removed parameter
projectName
- Rule @mr-linter/jira/has_issue_link: removed parameter
projectCode
- Rule @mr-linter/title_starts_with_task_number: removed parameter
projectName
- Rule @mr-linter/youtrack/has_issue_link: removed parameter
projectCode
- Removed
ClassSummary
- Added param
task
totitle_conventional
rule for checking if title contains task number
- Updated PHP to 8.2
- Deleted unless dependency "jetbrains/phpstorm-attributes"
- Throw exception when github actions token is empty
- Throw exception when gitlab token is empty
- Reduced docker image size
- Updated rules doc page
- Bump
guzzlehttp/psr7
from2.4.3
to2.4.5
- Added rule
title_conventional
- Throw http exceptions and catch their in CI requests
- Support GitLab CI job token
- Fixed phar on "TwigTest not found"
- Added comments with lint result for merge requests
- Added "no ssh keys" rule to prevent ssh keys from being included in the merge request.
- Added "disable file extensions" rule to disable adding files of certain extensions.
- Add diff fragments for fast search in changes
- Added Rule "diff limit"
- Added examples for params of rules
- Added rule "Update changelog"
- Resolving object config for rule
- Refactored type resolvers
- Add Evaluator "Not starts any"
- Turn on forgotten rule "@mr-linter/forbid_changes"
- Suppress error on non-critical rules via rule option
critical: false
- Added option
stop_on_failure
for stop linter on first failure - Added option
stop_on_warning
for stop linter on first warning
- [Logger] Print date and time in logs
- Added array of notes in event
rule_was_failed
- [Docs] Added event descriptions into config JSON Schema
- Added option for disable notification sound by time period
- Added environment variable
MR_LINTER_TIMEZONE
for set timezone
- Moved shared contracts from common folder to self folders
- Add evaluator "not has any"
- Add logs for HTTP Client
- Validate BitBucket PR data
- Update PHPStan level to 9
- Added Rule "Branch starts with task number"
- Added Rule "Forbid changes"
- Added logs for events
- Up test coverage
- Support Bitbucket Pipelines
- Configuration structure for CI credentials
- Documentation for conditions
- Rule
@mr-linter/title_starts_with_task_number
for checking task number in request title
- Notifications for telegram on events: lint_finished, lint_started
- Added markdown condition operator:
containsHeading
- Added condition operator:
linesMax
- Added condition operator:
containsLine
- Refactored condition evaluator resolving
- ๐ Up test coverage to 40.21%
- Added dependency psr/clock
- Fixed
NativeJsonDecoder
- Added some tests
- MR-Linter is now not library, but project
- Project structure
- Added
IsSnakeCaseEvaluator
- Added
IsKebabCaseEvaluator
- Added
IsCamelCaseEvaluator
- Added
IsStudlyCaseEvaluator
- Added
IsLowerCaseEvaluator
- Added
IsUpperCaseEvaluator
- Added
$all
evaluator - Added
$any
evaluator - Added
IsEmptyEvaluator
- PHP Config Loader
- Added Custom rule for user conditions
- Added dependency check
- Fixed direct dependencies
- Added condition
match
for chechking string on match regex.
- Added coverage reporting
- Added some tests
- Added
notStarts
Condition Operator - Added
notEnds
Condition Operator
- Added interface
HasDebugInfo
for better object printing.
- Moved exception on building guzzle client to ClientFactory
- Static class URI
- Command
dump
: print concrete rule class
- Added command
mr-linter install
: Copy config into yaml, json files
- Configuration loading refactoring
- Support many configurations for Rule
- Condition Operator 'countEqualsAny'
- Deptrac
- Contracts for YAML/JSON decoding.
- Metrics
- Debug mode, command
mr-linter lint --debug
- Logging for HTTP Requests
- Added Rule HasChanges
- Added ApplicationFactory
- Added InfoCommand
mr-linter info
- Added conditions
countEquals
,countNotEquals
- [Bug] Credentials are required to be filled
- Added YAML Config Loader
- Added rule conditions
- Loading Config from JSON
- Docker image
- Added method
getName
to Rule
- Fix finding composer autoload path in binary
- Added rule for check count changed files on a limit
- Added property
changedFilesCount
to merge request objects
- Update exception hierarchy. Parent: MergeRequestLinterException
- Added
ServerUnexpectedResponseException
- [Feature] Added rule "Has link to YouTrack issue"
- [Feature] Added rule "OnTargetBranchRule"
- Added property "sourceBranch" to MergeRequest object
- Added property "targetBranch" to MergeRequest object
- [Feature] Added rule "Has link to Jira task"
- ๐ฅ Init library