Skip to content

Releases: masastack/MASA.Framework

0.5.0-preview.1

21 Jun 08:23
92f15be
Compare
Choose a tag to compare
0.5.0-preview.1 Pre-release
Pre-release

Bug Fixes

  • Configuration.Dcc: Fix node errors #85
  • Storage.Aliyun: Fix upload error based on configuration file #87

Features

  • IdGenerator: Add IdGenerator.SimpleGuid and IdGenerator.SequentialGuid and IdGenerator.Snowflake #76 #83 #87
  • Auth: Add sdk method for team and permission #77 #80
  • OIDC: Add Oidc.EntityFramework、Oidc.Cache.Storage #78
  • IdentityModel: Add IdentityModel, support updating creator, creation time, modifying person, modification time, etc. #81
  • Auth: Update auth sdk identity #84
  • Data: Support distributed lock #88
  • Storage: Support multiple buckets #89

Refactors

  • EntityFramework: Support optimistic concurrency #79

Chores

  • Modify namespace #82
  • Update Masa.Utils library version to 0.5.0-preview.2 #90

Docs

  • Home: Modify the homepage document #87
  • Storage.Aliyun: Fix Chinese documentation errors #87

修复Bug

  • Configuration.Dcc: 修复获取节点错误 #85
  • Storage.Aliyun: 修复基于配置文件的上传出错 #87

功能

  • IdGenerator: 添加 IdGenerator.SimpleGuid 和 IdGenerator.SequentialGuid 和 IdGenerator.Snowflake #76 #83 #87
  • Auth: 为团队和权限添加 sdk 方法 #77 #80
  • OIDC: 添加Oidc.EntityFramework、Oidc.Cache.Storage #78
  • IdentityModel: 添加IdentityModel, 支持更新创建者、创建时间、修改人、修改时间等. #81
  • Auth: 更新 auth sdk 身份 #84
  • Data: 支持分布式锁 #88
  • Storage: 支持多Bucket #89

重构

  • EntityFramework: 支持乐观并发 #79

杂务

  • 修改命名空间 #82
  • 更新Masa.Utils库版本到0.5.0-preview.2 #90

文档

  • Home: 修改首页文档 #87
  • Storage.Aliyun: 修复中文文档错误 #87

0.4.0

01 Jun 03:25
0de0df6
Compare
Choose a tag to compare

Breaking Changes

  • CustomizeDbContext inherits from IntegrationEventLogContext to MasaDbContext #21

Bug Fixes

  • EventBus: Throws an exception while retaining the original stack information and does not change the exception information #25
  • Repository: Fix entities to use IRepository, but we recommend using IRepository for aggregate roots instead of entities #33

Chores

  • Repository.EF: change _context To Context #22
  • IntegrationEvents.Dapr: Adjust UoW enable check prompt #28
  • UoW.EF: Remove invalid references #28
  • Add License #48
  • Change .editorconfig #52
  • Upgrade Masa.Utils Library Package #21 #24 #37 #43
    #57 #60 #74

CI

  • Github Action: Add Es job #24

Docs

  • Ddd.Domain: Adjust Masa.Contrib.Ddd.Domain doc #21
  • IntegrationEvents.Dapr: adjust Masa.Contrib.Dispatcher.IntegrationEvents.Dapr doc #21
  • UoW: Fix UoW documentation errors #27
  • CQRS: Modify the introduction of the Readme #44
  • Homepage ReadMe: Modify the introduction of the homepage Readme #44
  • EventBus: Modify EventBus documentation #53

Features

  • SearchEngine.AutoComplete: Add AutoComplete #24 #43 #44
  • Isolation: Add Isolation #28 #29 #30 #31 #44 #52
  • UoW: Extend UseUoW method for IEventBusBuilder #27
  • UoW: Added IUnitOfWorkManager and IUnitOfWorkAccessor, Support for creating new DbContext, IUnitOfWork Add IServiceProvider #27
  • UoW.EF: CreateDbContext supports lazy loading #21 #28
  • Pm: Added pm client #32 #39 #46
  • Storage: Added Aliyun Cloud Storage #34 #62 #68 #69 #71
  • Repository: Add GetPaginatedListAsync By sorting and RemoveAsync By Id、RemoveRangeAsync By Id Collection、Add GetListAsync methods By Sorting #38
  • Repository: Add RemoveAsync method to support id deletion, RemoveRangeAsync supports id collection deletion #38
  • Mapping: Support Mapping #47 #48
  • EntityFramework: Add EntityFramework #52 #63 #64 #72
  • Auth: Add Auth Sdk #67 #70

Refactors

  • Repository.EF: Remove the individually specified Assembly #21 #22 #27
  • EventLogs.EF: Refactored EventLogs.EF #21
  • Dispatcher: Adjust the usage of EventBus and IntegrationEventBus, Adjust UseDaprEventBus、UseEventLog extension method parameters #22
  • Configuration: Local Configuration removes the file Section node #36 #37 #65 #66

Renames

  • Masa.Contrib.SearchEngine.AutoComplete renamed to Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch #43
  • Masa.Contrib.SearchEngine.AutoComplete.Tests renamed to Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch.Tests #45

破坏性改动

  • 自定义DbContext从 IntegrationEventLogContext 改为继承 MasaDbContext #21

修复Bug

  • EventBus:抛出异常,同时保留原始堆栈信息,不改变异常信息 #25
  • Repository:修复实体以使用 IRepository,但我们建议将IRepository 用于聚合根,而不是实体 #33

杂务

  • Repository.EF: _context 修改为Context #22
  • IntegrationEvents.Dapr: 调整 UoW 启用检查提示 #28
  • UoW.EF: 移除无效引用 #28
  • 添加 License #48
  • 修改 .editorconfig #52
  • 升级Masa.Utils版本 #21 #24 #37 #43
    #57 #60

流水线

  • Github Action: 添加Es任务 #24

文档

  • Ddd.Domain:调整 Masa.Contrib.Ddd.Domain 文档 #21
  • IntegrationEvents.Dapr:调整 Masa.Contrib.Dispatcher.IntegrationEvents.Dapr 文档 #21
  • UoW: 修复文档错误 #27
  • CQRS:修改Readme的介绍 #44
  • Homepage ReadMe:修改主页Readme文档 #44
  • EventBus: 修改EventBus文档 #53

功能

  • SearchEngine.AutoComplete: 支持输入补全 #24 #43 #44
  • Isolation: 支持隔离性 #28 #29 #30 #31 #44 #52
  • UoW: IEventBusBuilder扩展UseUoW方法 #27
  • UoW:新增IUnitOfWorkManager和IUnitOfWorkAccessor,支持新建DbContext,IUnitOfWork新增IServiceProvider #21 #27
  • UoW.EF: CreateDbContext 支持延迟加载 #28
  • Pm: 添加Pm Sdk #32 #39
  • 存储: 新增阿里云云存储 #34 #62 #68 #69 #71
  • Repository:添加 GetPaginatedListAsync、GetListAsync方法、添加通过Id、Id集合删除 #38
  • Repository: 添加RemoveAsync方法支持id删除,RemoveRangeAsync支持id集合删除 #38
  • Mapping: 支持映射 #47 #48
  • EntityFramework: 支持EntityFramework #52 #63 #64 #72
  • Auth: 添加Auth Sdk #67 #70

重构

Read more

0.4.0-rc.4

26 May 09:56
6350c39
Compare
Choose a tag to compare
0.4.0-rc.4 Pre-release
Pre-release

Features

  • Auth: Add auth sdk #67
  • Storage.Aliyun: Support file upload, delete #68 #69

功能

  • Auth: 添加Auth sdk #67
  • Storage.Aliyun: 支持文件上传删除等 #68 #69

0.4.0-rc.3

23 May 07:12
044e09b
Compare
Choose a tag to compare
0.4.0-rc.3 Pre-release
Pre-release

Bug Fixes

  • Configuration: The configuration sources of CommandLineConfigurationSource, EnvironmentVariablesConfigurationSource, KeyPerFileConfigurationSource, and MemoryConfigurationSource are not migrated by default #65 #66

Bug修复

  • 配置: 默认不迁移配置源为CommandLineConfigurationSource、EnvironmentVariablesConfigurationSource、KeyPerFileConfigurationSource、MemoryConfigurationSource的配置

0.4.0-rc.2

19 May 02:05
4c58790
Compare
Choose a tag to compare
0.4.0-rc.2 Pre-release
Pre-release

Bug Fixes(修复Bug)

  • Storage.Aliyun: Remove Aliyun Sts Response Success Judgment #62

    Storage.Aliyun:移除阿里云Sts响应成功判断

Chores(杂务)

  • Add the Masa.BuildingBlocks.Service.Contracts class library to the solution #61

    添加Masa.BuildingBlocks.Service.Contracts类库到解决方案

  • SoftDelete: Fix the problem that soft delete fails when using IsolationDbContext #64

    SoftDelete: 修复使用IsolationDbContext时软删除不生效的问题

Refactors

  • Entityframework: Refactor SaveChange methods #63

    Entityframework: 重构SaveChange方法

0.4.0-rc1

13 May 09:32
8fa12ac
Compare
Choose a tag to compare
0.4.0-rc1 Pre-release
Pre-release

Breaking Changes(破坏性改动)

  • EventLogs.EF: Row Version field type changed to string (byte[] database compatibility is poor)
    Event Logs.EF:Rowversion 字段类型更改为字符串(byte[] 数据库兼容性差)
  • Repository.EF: change _context To Context
    Repository.EF:将 _context 更改为 Context
  • Dispatcher: Added IDistributedDispatcherOptions (inheriting IDispatcherOptions), and UseDaprEventBus was changed to an extension of IDistributedDispatcherOptions
    Dispatcher:新增 IDistributedDispatcherOptions(继承 IDispatcherOptions),UseDaprEventBus 改为 IDistributedDispatcherOptions 的扩展
  • CustomizeDbContext inherits from IntegrationEventLogContext to MasaDbContext
    自定义DbContext从 IntegrationEventLogContext 改为继承 MasaDbContext
  • Isolation: The configuration is modified to #52
    Isolation: 配置调整
    {
      "ConnectionStrings": {
        "DefaultConnection": "server=localhost;uid=sa;pwd=P@ssw0rd;database=identity;"
      },
      "IsolationConnectionStrings": [ //reanme Isolation to IsolationConnectionStrings, and from ConnectionStrings to root.
        {
          "TenantId": "*",
          "Environment": "development",
          "ConnectionString": "server=localhost,1434;uid=sa;pwd=P@ssw0rd;database=identity;",
          "Score": 99
        },
        {
          "TenantId": "00000000-0000-0000-0000-000000000002",
          "Environment": "development",
          "ConnectionString": "server=localhost,1435;uid=sa;pwd=P@ssw0rd;database=identity;"
        }
      ]
    }

Bug Fixes(修复Bug)

  • EventBus: Throws an exception while retaining the original stack information and does not change the exception information #25
    EventBus:抛出异常,同时保留原始堆栈信息,不改变异常信息
  • Repository: Fix entities to use IRepository, but we recommend using IRepository for aggregate roots instead of entities #33
    Repository:修复实体以使用 IRepository,但我们建议将 IRepository 用于聚合根,而不是 IRepository 用于实体 #33

Chores(杂务)

  • Repository.EF: change _context To Context #22
  • IntegrationEvents.Dapr: Adjust UoW enable check prompt #28
  • UoW.EF: Remove invalid references #28
  • Modify using global using #30
  • Update MASA.Utils library package to 0.4.0-preview.3 #37
  • AutoComplete: Upgrade Masa.Utils library version to 0.4.0-preview.4 #43
  • Add License #48
    添加 License
  • Change .editorconfig #52
    修改 .editorconfig
  • Unified version, upgrade Masa.Utils Library Package to 0.4.0-preview.5 #57
    统一版本,升级 Masa.Utils 包到 0.4.0-preview.5
  • Upgrade Masa.Utils Library Package to 0.4.0-rc1 #60
    升级 Masa.Utils 包到 0.4.0-rc1

CI(流水线)

  • Github Action: Add Es job #24
    Github Action: 添加Es任务

Docs(文档)

  • Ddd.Domain: Adjust Masa.Contrib.Ddd.Domain doc #21
    Ddd.Domain:调整 Masa.Contrib.Ddd.Domain 文档
  • IntegrationEvents.Dapr: adjust Masa.Contrib.Dispatcher.IntegrationEvents.Dapr doc #21
    IntegrationEvents.Dapr:调整 Masa.Contrib.Dispatcher.IntegrationEvents.Dapr 文档
  • SearchEngine.AutoComplete: add AutoComplete Readme #24
    SearchEngine.AutoComplete:添加AutoComplete文档
  • UoW: Fix UoW documentation errors #27
    UoW:修复 UoW 文档错误
  • Isolation: Added Isolation doc #28 #29 #31
    Isolation:添加了Isolation文档
  • AutoComplete.ElasticSearch: Modify the AutoComplete.ElasticSearch document #44
    AutoComplete.ElasticSearch:修改 AutoComplete.ElasticSearch 文档
  • CQRS: Modify the introduction of the Readme #44
    CQRS:修改Readme的介绍
  • Homepage ReadMe: Modify the introduction of the homepage Readme #44
    Homepage ReadMe:修改主页Readme文档
  • Isolation.MultiEnvironment: Modify the introduction of the Readme #44
    Isolation.MultiEnvironment:修改Readme的介绍
  • Isolation.UoW.EF: Modify the Readme document #52
    Isolation.UoW.EF: 修改 Readme 文档
  • EventBus: Modify EventBus documentation #53
    EventBus: 修改 EventBus 文档

Features(功能)

  • SearchEngine.AutoComplete: Support autocomplete #24
    SearchEngine.AutoComplete:支持autocomplete
  • UoW: Extend UseUoW method for IEventBusBuilder #27
    UoW: IEventBusBuilder扩展UseUoW方法
  • UoW: Added IUnitOfWorkManager and IUnitOfWorkAccessor, Support for creating new DbContext, IUnitOfWork Add IServiceProvider #27
    UoW:新增IUnitOfWorkManager和IUnitOfWorkAccessor,支持新建DbContext,IUnitOfWork新增IServiceProvider
  • Isolation: Added isolation support #28
    Isolation:添加Isolation支持
  • UoW.EF: CreateDbContext supports lazy loading #28
    UoW.EF: CreateDbContext 支持延迟加载
  • Pm: Added pm client #32
    Pm:添加Pm客户端
  • Storage: Added Aliyun Cloud Storage
    Storage:新增阿里云云存储
  • Repository: Add GetPaginatedListAsync By sorting and RemoveAsync By Id、RemoveRangeAsync By Id Collection、Add GetListAsync methods By Sorting #38
    Repository:添加 GetPaginatedListAsync、GetListAsync方法、添加通过Id、Id集合删除
  • BasicAbility.Pm: Override the AddPmClient method #39
    BasicAbility.Pm:重写 AddPmClient 方法
  • AutoComplete: Add DeleteAsync Methods #43
    AutoComplete:添加 DeleteAsync 方法
  • PM: Add environment、cluster、project、app service #46
    PM: 添加环境、集群、项目、应用相关的服务
  • Mapping: Support Mapping #47 #48
    Mapping:支持映射
  • Repository: Add RemoveAsync method to support id deletion, RemoveRangeAsync supports id collection deletion #38
    Repository:添加RemoveAsync方法支持id删除,RemoveRangeAsync支持id集合删除

Refactors(重构)

  • Repository.EF: Remove the individually specified Assembly #21
    Repository.EF:删除单独指定的程序集
  • UoW: Refactor UnitOfWork to delay getting DbContext #21
    UoW:重构 UnitOfWork 以延迟获取 DbContext
  • EventLogs.EF: Refactored EventLogs.EF to adapt to Masa.Utils.EntityFramework 0.4.1-preview.1 #21
    EventLogs.EF:重构 EventLogs.EF 以适配 Masa.Utils.EntityFramework 0.4.1-preview.1
  • Dispatcher: Adjust the usage of EventBus and IntegrationEventBus, Adjust UseDaprEventBus、UseEventLog extension method parameters #22
    Dispatcher:调整EventBus和IntegrationEventBus的使用,调整UseDaprEventBus、UseEventLog扩展方法参数
  • EventLogs.EF: change the state of the local message table to be processed by sql statement #22
    EventLogs.EF:通过sql语句改变本地消息表要处理的状态
  • IntegrationEvents.Dapr: Refactoring background tasks #27
    IntegrationEvents.Dapr:重构后台任务
  • Isolation: Update Parser and Isolation Usage #30
    Isolation:更新解析器和Isolation使用
  • Isolation: Adjust SaveChangeFilter, adjust environment, tenant attribute assignment #30
    Isolation:调整SaveChangeFilter、调整环境、租户属性分配
  • Configuration: Local Configuration removes the file Section node #36
    Configuration:本地配置删除文件Section节点
  • AutoComplete: Optimize queries by Precise、The default operator is changed to And #43
    AutoComplete:通过Precise优化查询、默认运算符改为And
  • Ddd.Domain: IAuditEntity supports soft delete #49
    Ddd.Domain: IAuditEntity 支持软删除

Renames(重命名)

  • Masa.Contrib.SearchEngine.AutoComplete renamed to Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch #43
    Masa.Contrib.SearchEngine.AutoComplete 重命名为 Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch
  • Masa.Contrib.SearchEngine.AutoComplete.Tests renamed to Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch.Tests #45
    Masa.Contrib.SearchEngine.AutoComplete.Tests 重命名为 Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch.Tests

Tests(测试)

  • Adjusted EventLogs.EF, Repository.EF, Ddd.Domain, IntegrationEvents.Dapr unit tests #21
    调整了 EventLogs.EF、Repository.EF、Ddd.Domain、IntegrationEvents.Dapr 单元测试
  • Adapt to Utils.EntityFramework 0.4.0-preview.2 #24
    适配 Utils.EntityFramework 0.4.0-preview.2
  • SearchEngine.AutoComplete: Add AutoComplete UnitTest #24
    Search Engine.AutoComplete:添加自动完成单元测试
  • IntegrationEvents.Dapr: Adapt unit tests to new background tasks #27
    IntegrationEvents.Dapr:使单元测试适应新的后台任务
  • Isolation: Added Isolation Unit tests #28
    Isolation:添加了Isolation单元测试
  • Isolation: Perfect unit tests #30
    Isolation:完善单元测试
  • Configuration: Handling ConfigurationTest exceptions #37
    Configuration:处理配置测试异常

0.4.0-preview.5

12 May 05:43
ab79474
Compare
Choose a tag to compare
0.4.0-preview.5 Pre-release
Pre-release

Breaking Changes(破坏性改动)

  • Isolation: The configuration is modified to #52
    Isolation: 配置调整
    {
      "ConnectionStrings": {
        "DefaultConnection": "server=localhost;uid=sa;pwd=P@ssw0rd;database=identity;"
      },
      "IsolationConnectionStrings": [ //reanme Isolation to IsolationConnectionStrings, and from ConnectionStrings to root.
        {
          "TenantId": "*",
          "Environment": "development",
          "ConnectionString": "server=localhost,1434;uid=sa;pwd=P@ssw0rd;database=identity;",
          "Score": 99
        },
        {
          "TenantId": "00000000-0000-0000-0000-000000000002",
          "Environment": "development",
          "ConnectionString": "server=localhost,1435;uid=sa;pwd=P@ssw0rd;database=identity;"
        }
      ]
    }

Chores(杂务)

  • Add License #48
    添加 License
  • Change .editorconfig #52
    修改 .editorconfig
  • Unified version, upgrade Masa.Utils Library Package to 0.4.0-preview.5 #57
    统一版本,升级 Masa.Utils 包到 0.4.0-preview.5

Docs:

  • Isolation.UoW.EF: Modify the Readme document #52
    Isolation.UoW.EF: 修改 Readme 文档
  • EventBus: Modify EventBus documentation #53
    EventBus: 修改 EventBus 文档

Features

  • PM: Add environment、cluster、project、app service #44
    PM: 添加环境、集群、项目、应用相关的服务
  • Mapping: Support Mapping #47 #48
    Mapping:支持映射
  • Service: Add service contracts(Request/Response) #50
    Service:添加服务契约(Request/Response)
  • DDD: Add IGenerateDomainEvents #52
    DDD:添加 IGenerateDomainEvents
  • Data.Contracts: Add ISoftDelete, IDataFilter #49
    Data.Contracts: 添加ISoftDelete, IDataFilter
  • Data: Add Masa.BuildingBlocks.Data #49
    Data: 添加 Masa.BuildingBlocks.Data

Refactors(重构)

  • Event: Delete EventId, CreationTime properties, and add GetEventId, SetEventId, GetCreationTime, SetCreationTime methods #46
    Event: 删除EventId, CreationTime 属性,添加 GetEventId, SetEventId, GetCreationTime, SetCreationTime方法
  • Ddd.Domain: IAuditEntity supports soft delete #49
    Ddd.Domain: IAuditEntity 支持软删除
  • Data.UoW: IDbConnectionStringProvider moved to Masa.BuildingBlocks.Data #49
    Data.UoW: IDbConnectionStringProvider 移动到 Masa.BuildingBlocks.Data
  • Isolation: Delete IIsolationDbConnectionStringProvider #49
    Isolation: 删除 IIsolationDbConnectionStringProvider

0.4.0-preview.4

21 Apr 03:19
2b408d9
Compare
Choose a tag to compare
0.4.0-preview.4 Pre-release
Pre-release

Rename

  • Masa.Contrib.SearchEngine.AutoComplete renamed to Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch #43
  • Masa.Contrib.SearchEngine.AutoComplete.Tests renamed to Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch.Tests #45

Chores

  • AutoComplete: Upgrade Masa.Utils library version to 0.4.0-preview.4 #43

Docs

  • AutoComplete.ElasticSearch: Modify the AutoComplete.ElasticSearch document #44
  • CQRS: Modify the introduction of the Readme #44
  • Homepage ReadMe: Modify the introduction of the homepage Readme #44
  • Isolation.MultiEnvironment: Modify the introduction of the Readme #44

Features

  • Repository: Add GetPaginatedListAsync By sorting and RemoveAsync By Id、RemoveRangeAsync By Id Collection、Add GetListAsync methods By Sorting #38
  • BasicAbility.Pm: Override the AddPmClient method #39
  • AutoComplete: Add DeleteAsync Methods #43

Refactors

  • AutoComplete: Optimize queries by Precise、The default operator is changed to And #43

Tests

  • Repository: Add RemoveAsync method to support id deletion, RemoveRangeAsync to support id collection and other unit tests #38

0.4.0-preview.3

15 Apr 05:35
6a470cb
Compare
Choose a tag to compare
0.4.0-preview.3 Pre-release
Pre-release

Bug Fixes

  • Resitory: Fix Entity to use IRepository, but we recommend using IRepository for aggregate root, not IRepository for Entity (#33)

Chores

  • Update MASA.Utils library package to 0.4.0-preview.3 (#37)

Docs

  • Isolation: Fix Isolation documentation errors (#31)

Features

  • Pm: Added pm client (#32)
  • Storage: Added Aliyun Cloud Storage

Refactors

  • Configuration: Local Configuration removes the file Section node (#36)

Tests

  • Configuration: Handling ConfigurationTest exceptions (#37)

0.4.0-prevew.2

08 Apr 05:13
2ece5c7
Compare
Choose a tag to compare
0.4.0-prevew.2 Pre-release
Pre-release

Chores

  • IntegrationEvents.Dapr: Adjust UoW enable check prompt (#28)
  • UoW.EF: Remove invalid references (#28)
  • Modify using global using (#30)

Docs

  • UoW: Fix UoW documentation errors (#27)
  • Isolation: Added Isolation doc (#28)
  • Isolation: Adjust Isolation document usage(#29)

Features

  • UoW: Extend UseUoW method for IEventBusBuilder (#27)
  • UoW: Added IUnitOfWorkManager and IUnitOfWorkAccessor, Support for creating new DbContext, IUnitOfWork Add IServiceProvider (#27)
  • Isolation: Added isolation support (#28)
  • UoW.EF: CreateDbContext supports lazy loading (#28)

Refactors

  • IntegrationEvents.Dapr: Refactoring background tasks (#27)
  • Isolation: Update Parser and Isolation Usage (#30)
  • Isolation: Adjust SaveChangeFilter, adjust environment, tenant attribute assignment (#30)

Tests

  • IntegrationEvents.Dapr: Adapt unit tests to new background tasks (#27)
  • Isolation: Added Isolation Unit tests (#28)
  • Isolation: Perfect unit tests (#30)