Skip to content

Release v4 的一些想法 #16

@moomiji

Description

@moomiji

v5

  • Custom 中的 sealed record class 改为 record struct
  • 调整命名空间和目录,与文件夹符合
  • 抽象配置类,方便这一吨返回类型为 bool 的 API 以实现链式调用
  • .Net 10 出后 停止支持 .NET 7 ,同时升级测试框架的版本
  • 复用 ci cd 的 build,解耦 cd 的 ci 版本发布,合并 test 和 stable 的工作流
  • 构造函数改,工厂方法,ToAdbWith
  • get_node_detail 使用 python binding 的方式
  • IsStopping 联动 Canceltoken
  • 公开以 Handle 为参数的构造函数
  • https://learn.microsoft.com/zh-cn/dotnet/standard/native-interop/best-practices
  • EventHandler.ToCallback 需要考虑sender
  • IMaaCustom 等互操作时通过 transArg 改成静态委托
  • native 公开 架构
  • 所有的构造函数,能不包含api就不要包含
  • 环境变量首先加载

v4

  • 整合 README
  • 异步版本的接口
  • 移动 UnitTests 和 Extensions 的位置
  • MaaTaskerGetRecognitionDetail 获取的 detail_json 需拆分为 all_resultsfiltered_resultsbest_result(注意 best 可能为 null),并根据算法解析为不同的结构体。
  • 这个待接口稳定后也拆分一下? MaaXYZ/MaaFramework@6bd6dbc
  • 在实现上一条之前,实现类似于 Rectangle(Point, Size) 的结构,及其解构
  • Buffers.Rent
  • API 文档样式实现换成原来的或微软的
  • 没有副作用的 native 资源也别走 IDisposable 了,让 GC 在 finalizer 里 free 了得了)

v4.5

  • 重新支持 win arm64 https://github.com/MaaXYZ/MaaFramework/pull/705

v4.4

  • Dispose 后 DebuggerDisplay 有问题
  • 解析 DllImportSearchPath
  • ILC : warning IL3000: MaaFramework.Binding.Interop.Native.NativeLibrary.GetRuntimesPaths(String): 'System.Reflection.Assembly.Location.get' always returns an empty string for assemblies embedded in a single-file app. If the path to the app directory is needed, consider calling 'System.AppContext.BaseDirectory'.
  • Tasker 管理AgentCLient
  • Register(string name = "");
  • stringbufferSetEx 存在GC,消除各 buffer 可能存在的GC
  • 不能针对 preview 版本,发布成pre-release,读取了上一次的changelog
  • binding dispose 前等待最后一个任务

v4.2

  • 版本定义修改为4.2.x.x,注意构建脚本也要修改解析

v4.0

  • 修复 gha test
  • dll 环境变量
  • protected override void Dispose(bool disposing) 有问题
  • IMaaAgentServer IMaaAgentClient 改为链式调用
  • 重构 NativeBindingInfo 为 Context

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions