XPlugins.iOS.BEMCheckBox 1.4.3 Released

I’m happy to announce the release of XPlugins.iOS.BEMCheckBox 1.4.3.  The main feature of this release is exposing the DidTapCheckBox event in the underlying BEMCheckBox.  You can find a full list of issues fixed in this release here.

The easiest way to get this update is via NuGet:

Install-Package SaturdayMP.XPlugins.iOS.BEMCheckBox -Version 1.4.3
dotnet add package SaturdayMP.XPlugins.iOS.BEMCheckBox --version 1.4.3

Subscribe to the DidTapCheckBox event as you would any other C# event:

checkbox.DidTapCheckBox += DidTapCheckBoxEvent;

The event handler looks like:

[Read More]

Happy Holidays and all the Best in 2018!

[caption id=“attachment_1522” align=“alignright” width=“300”]Wrapped Christmas Presents Gift wrapping skill is inversely correlated to software development skills.[/caption]

This morning I made my last shopping trip before Christmas, at least I hope it’s my last trip.

Pro tip: the Costco near us officially opens at 10am but if you show up at 9:45ish they will let you in.  At least they let me in.  Then you can run, grab the salmon, and get out before the hoards descend.

[Read More]
Categories: fun  Tags: happy-holidays 

Today I Learned How to Fix Illegal Characters in Path Error with TeamCity and RealmDB

When building a Xamarin application one step is to build the Android APK file.  This is a MsBuild step in TeamCity that looks like:

TeamCity Create APK Package Build Step

This step generates the following error:

[15:55:53][Source\SmallVictories\SmallVictories.csproj] CopyRealmWeaver
[15:55:53][CopyRealmWeaver] CopyRealmWeaver
[15:55:53][CopyRealmWeaver] Copy
[15:55:53][Copy] Creating directory "*Undefined*Tools".
[15:55:53][Copy] C:\BuildAgent\temp\buildTmp\.nuget\packages\realm.database\2.1.0\build\Realm.Database.targets(28, 5): error MSB3021: Unable to copy file "C:\BuildAgent\temp\buildTmp\.nuget\packages\realm.database\2.1.0\build\..\tools\RealmWeaver.Fody.dll" to "*Undefined*Tools\RealmWeaver.Fody.dll". Illegal characters in path.
[15:55:53][Step 6/8] Error message is logged

Notice the “*Undefined*Tools” in the directory path.  To fix this step you need to add /p:SolutionDir="/" to the command line.  So now the build step looks like:

[Read More]

Overlapping Segments Create Space Time Paradoxes

This post is part of a larger discussion about temporal databases.  Hopefully it stands on it’s own but for more context see the Temporal Database Design page.  You can read the official Wikipedia definition but for our purposes a Temporal Database is a database where you can query for historical data using SQL.  This is work in progress and constructive feedback via e-mail, at chris.cumming@saturdaymp.com, is most appreciated.

In the last Temporal Database post I introduced timelines.  In this post we will talk about the one rule you cannot break:

[Read More]

Temporal Database Timelines

This post is part of a larger discussion about temporal databases.  Hopefully it stands on it’s own but for more context see the Temporal Database Design page.  You can read the official Wikipedia definition but for our purposes a Temporal Database is a database where you can query for historical data using SQL.  This is work in progress and constructive feedback via e-mail (chris.cumming@saturdaymp.com) is most appreciated.

In a non-temporal database a record dose not change over time.  For example say you have a Contacts table with a name field.

[Read More]