h4ck3r31/psalm-issue-filter-plugin 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

h4ck3r31/psalm-issue-filter-plugin

Composer 安装命令:

composer require h4ck3r31/psalm-issue-filter-plugin

包简介

Allows to filter/skip code issues based on code snippets within PsalmPHP

README 文档

README

Allows to filter/skip code issues based on code snippets. The configuration example below skips PossiblyUndefinedStringArrayOffset or PossiblyUndefinedIntArrayOffset that might occur in project scenarios like:

class Subject
{
    /**
     * @return SomeService
     */
    protected function getSomeService()
    {
        // there's no guarantee this service instance is given
        // however, it particular frameworks it might be like that
        // -> this plugin helps to skip these boilerplate issues
        return $GLOBALS['SOME_SERVICE'];
    }
}

Configuration Directives

  • section used for logical grouping of issue and filter items
  • issue selecting issue class names, filter items shall be applied to
    • class mandatory, using Psalm's issue class name
  • filter defining matching strategies concerning filtering
    • type matching strategy - either str_starts_with or preg_match
    • value the corresponding payload to be matches (adjust for actual strategy)
    • result (default false) which is the same as in Psalm's BeforeAddIssueInterface::beforeAddIssue
      • true stops event handling & keeps issue
      • false stops event handling & ignores issue

Example

in plugin section of psalm.xml

<psalm>
    <!-- ... -->
    <plugins>
        <!-- ... -->
        <pluginClass class="H4ck3r31\PsalmIssueFilterPlugin\Plugin">
            <section>
                <issue class="Psalm\Issue\PossiblyUndefinedStringArrayOffset" />
                <issue class="Psalm\Issue\PossiblyUndefinedIntArrayOffset" />

                <filter type="str_starts_with" value="$GLOBALS" result="false" />
                <!-- same impact, using `preg_match` instead of `str_starts_with` -->
                <filter type="preg_match" value="/^\$GLOBALS/" result="true" />
            </section>
            <section>
                <!-- ... -->
            </section>
        </pluginClass>
    </plugins>
    <!-- ... -->
</psalm>

h4ck3r31/psalm-issue-filter-plugin 适用场景与选型建议

h4ck3r31/psalm-issue-filter-plugin 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 509 次下载、GitHub Stars 达 0, 最近一次更新时间为 2022 年 09 月 10 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 h4ck3r31/psalm-issue-filter-plugin 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 h4ck3r31/psalm-issue-filter-plugin 我们能提供哪些服务?
定制开发 / 二次开发

基于 h4ck3r31/psalm-issue-filter-plugin 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 509
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 19
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-09-10