Skip to content

Releases: WarHub/wham

ListNode<T>.WithNodes covariant return type

17 Oct 21:07
Compare
Choose a tag to compare

[0.13.0] - 2021-09-16

Changed

  • ListNode<T>-derived classes (e.g. ItemListNode) now have covariant return with self type
    in WithNodes method override (e.g. ItemListNode ItemListNode.WithNodes(nodes)). (#133)
  • wham publish fixed to work on repositories with no gst file. (#135)

Roster migrations, Cores now records

12 Nov 18:39
Compare
Choose a tag to compare

Added

  • Feat: Add support for roster migrations (#131).

Changed

  • deps: Use .NET 5 SDK for build, target only .NET 5 with NuGet packages.
  • Fix: RosterTag name in v2.03 XSD schema (was tags, is tag) (#121).
  • Refactor: Core types are now C# 9 nominal records (#125).
  • Refactor: Xml serializers are now manually crafted using C# 9/.NET 5 Source Generators;
    this allows Xml serialization to work with C#9 records and (primarily) ImmutableArrays,
    as well as greatly reduce warmup-time in deployments like Blazor WASM, and remove
    any Reflection from that process (#130).

Update data schema to be fully 2.03 compliant

12 Nov 18:38
Compare
Choose a tag to compare

Added

  • Added some base classes:
    • added QueryFilteredBase (QueryBase with ChildId), inherits from QueryBase
    • added SelectionParentBase, base of Force and Selection
    • added ModifierBase, base of Modifier and ModifierGroup
  • Added descriptive comments to ModifierKind
  • Added RosterTag type
  • Added missing fields to be fully 2.03 schema compliant:
    • added CostType.Hidden
    • added ModifierGroup.ModifierGroups
    • added many fields to Publication:
      • ShortName
      • Publisher
      • PublicationDate
      • PublisherUrl
    • added CustomNotes and Tags to Roster
    • added CustomName and CustomNotes to RosterElementBase

Changed

  • CharacteristicType now inherits Commentable
  • renamed SelectorBase to QueryBase
  • BSv2.03 schema with the above changes

IDatafileInfo.GetData now async, along with other APIs

12 Nov 18:37
Compare
Choose a tag to compare

Added

  • readme field on datafile root elements (gamesystem and catalogue) in code
    and in 2.03 schema (#115).

Changed

  • In WarHub.ArmouryModel.ProjectModel.IDatafileInfo interface
    SourceNode? GetData() changed to async Task<SourceNode?> GetDataAsync();
    this also results in some APIs changing to be async as well, especially in
    Workspaces.BattleScribe namespace (#117).

Add C#8's Nullable Reference Types support

21 May 22:25
Compare
Choose a tag to compare

From changelog

Added

  • C# 8.0 Nullable Reference Types support (NRTs) (#111).
  • netstandard2.1 targets in libraries to support NRT-enabled TFMs.

Removed

  • WhamNodeCoreAttribute class from .Source library (added by accident in v0.8).

Add 'comment' support

14 May 09:37
Compare
Choose a tag to compare

Added

  • NodeList<T>.Slice(int, int) method to support ranges in C#8 (#89).
  • comment field on data elements (and in 2.03 schema) (#108).

Changed

  • Renamed BattleScribeVersion static well-known values from V0_00 to V0x00 (#86).
  • Renamed Resources to XmlResources (.Source library) (#86).
  • Changed NodeList<T>.GetEnumerator() and ListNode<T>.GetEnumerator()
    return type to custom enumerator NodeList<T>.Enumerator that's optimized
    for performance (#89).
  • Changed all parameter names across the board to be camelCased. Also changed
    parameter names of With methods to value to mirror setters (#90).
  • All Node With methods for collection properties are now extension methods,
    with the exception the ones where parameter name is the same as the property's
    that's being modified (#90).
  • Renamed a couple of Source Core/Node properties (#91):
    • Category: IsPrimary -> Primary
    • CategoryLink: IsPrimary -> Primary
    • EntryBase: IsHidden -> Hidden
    • Repeat:
      • Repeats -> RepeatCount
      • IsRoundUp -> RoundUp
    • SelectorBase: PercentValue -> IsValuePercentage
    • SelectionEntryBase: Import -> Exported

v0.8.0-alpha.12: build: Update dependencies, add Publish workflow (#100)

12 May 08:58
e79a7eb
Compare
Choose a tag to compare
* build: Use .NET Core SDK v3.1.200

* style: Abstract class ctor now protected

* ci: Set ci configuration to Release

* style: Refactor Directory.Build.props

* deps: Update to CG.R v0.7, RecGen v0.6

* ci: Add publish workflow

* fix: Apply code quality warning fixes

* tests: Don't close stream too early

v0.7.0

05 Nov 16:03
Compare
Choose a tag to compare

v0.7.0-beta.3: fix: add SEs, SEGs and ELs to EntryLink (#77)

02 Nov 13:28
6cb542f
Compare
Choose a tag to compare

v0.7.0-beta.2: fix: SourceRewriter (#75)

02 Nov 13:27
0b57b09
Compare
Choose a tag to compare