Skip to content

Release 3.0.115

Compare
Choose a tag to compare
@yanjustino yanjustino released this 08 Nov 14:47
· 134 commits to main since this release

C4Sharp version 3.0.115 is released 🚀

image

We released a new version of C4Sharp. The release includes new improvements such as minor bug fixes to the write test log, code maintainability, and performance. You can read the full list of new enhancements and bug fixes below:

Improvements 😎

  • Allow PluntSession to execute RELATIVE_INCLUDE as an argument.
  • Porting to dotnet 5.0
  • Fixing export method with path
  • Fixing PlantumlSession.cs to use StandardUrl
  • Change Model classes to record types
  • Adding Testing project 🥳
  • Removing unused methods
  • Fixing Methods documentation
  • rebranding logo

Break changes ⚠️

Configure PlantumlSession

Now the Export method is an extension method of PlantumlSession

new PlantumlSession()
    .UseDiagramImageBuilder() 
    .UseStandardLibraryBaseUrl()
    .Export(diagrams);
  • But, if you want to use the C4-PlantUML up-to-date version from their repo use this method UseStandardLibraryBaseUrl()
  • To save the *.png files you should use the method UseDiagramImageBuilder()

Instanciating Structures

Now the structure instantiation should be more explicit like this:

public static Person Customer => new Person("customer", "Personal Banking Customer")
{
    Description = "A customer of the bank, with personal bank accounts."
};

// Systems
public static SoftwareSystem BankingSystem => new SoftwareSystem("BankingSystem", "Internet Banking System")
{
    Description = "Allows customers to view information about their bank accounts, and make payments."
};

public static SoftwareSystem Mainframe => new SoftwareSystem("Mainframe", "Mainframe Banking System")
{
    Description = "Stores all of the core banking information about customers, accounts, transactions, etc.",
    Boundary = Boundary.External
};

public static SoftwareSystem MailSystem => new SoftwareSystem("MailSystem", "E-mail system")
{
    Description = "The internal Microsoft Exchange e-mail system.",
    Boundary = Boundary.External
};

See more in our sample code