Browse Source

Update migrations and fix a few bugs

Patrick Barron 5 years ago
parent
commit
46a0a2a601

+ 3 - 1
Jellyfin.Data/Entities/AccessSchedule.cs

@@ -2,6 +2,7 @@
 using System.ComponentModel.DataAnnotations;
 using System.ComponentModel.DataAnnotations.Schema;
 using System.Text.Json.Serialization;
+using System.Xml.Serialization;
 using Jellyfin.Data.Enums;
 
 namespace Jellyfin.Data.Entities
@@ -40,7 +41,7 @@ namespace Jellyfin.Data.Entities
         /// <remarks>
         /// Identity, Indexed, Required.
         /// </remarks>
-        [JsonIgnore]
+        [XmlIgnore]
         [Key]
         [Required]
         [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
@@ -49,6 +50,7 @@ namespace Jellyfin.Data.Entities
         /// <summary>
         /// Gets or sets the id of the associated user.
         /// </summary>
+        [XmlIgnore]
         [Required]
         [ForeignKey("Id")]
         public Guid UserId { get; protected set; }

+ 7 - 4
Jellyfin.Server.Implementations/Migrations/20200517002411_AddUsers.Designer.cs → Jellyfin.Server.Implementations/Migrations/20200527010628_AddUsers.Designer.cs

@@ -1,5 +1,4 @@
 #pragma warning disable CS1591
-#pragma warning disable SA1601
 
 // <auto-generated />
 using System;
@@ -12,7 +11,7 @@ using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 namespace Jellyfin.Server.Implementations.Migrations
 {
     [DbContext(typeof(JellyfinDb))]
-    [Migration("20200517002411_AddUsers")]
+    [Migration("20200527010628_AddUsers")]
     partial class AddUsers
     {
         protected override void BuildTargetModel(ModelBuilder modelBuilder)
@@ -20,7 +19,7 @@ namespace Jellyfin.Server.Implementations.Migrations
 #pragma warning disable 612, 618
             modelBuilder
                 .HasDefaultSchema("jellyfin")
-                .HasAnnotation("ProductVersion", "3.1.3");
+                .HasAnnotation("ProductVersion", "3.1.4");
 
             modelBuilder.Entity("Jellyfin.Data.Entities.AccessSchedule", b =>
                 {
@@ -129,7 +128,8 @@ namespace Jellyfin.Server.Implementations.Migrations
 
                     b.Property<string>("Path")
                         .IsRequired()
-                        .HasColumnType("TEXT");
+                        .HasColumnType("TEXT")
+                        .HasMaxLength(512);
 
                     b.HasKey("Id");
 
@@ -331,6 +331,9 @@ namespace Jellyfin.Server.Implementations.Migrations
                     b.Property<int>("SubtitleMode")
                         .HasColumnType("INTEGER");
 
+                    b.Property<int>("SyncPlayAccess")
+                        .HasColumnType("INTEGER");
+
                     b.Property<string>("Username")
                         .IsRequired()
                         .HasColumnType("TEXT")

+ 2 - 1
Jellyfin.Server.Implementations/Migrations/20200517002411_AddUsers.cs → Jellyfin.Server.Implementations/Migrations/20200527010628_AddUsers.cs

@@ -17,7 +17,7 @@ namespace Jellyfin.Server.Implementations.Migrations
                 {
                     Id = table.Column<int>(nullable: false)
                         .Annotation("Sqlite:Autoincrement", true),
-                    Path = table.Column<string>(nullable: false),
+                    Path = table.Column<string>(maxLength: 512, nullable: false),
                     LastModified = table.Column<DateTime>(nullable: false)
                 },
                 constraints: table =>
@@ -58,6 +58,7 @@ namespace Jellyfin.Server.Implementations.Migrations
                     RemoteClientBitrateLimit = table.Column<int>(nullable: true),
                     InternalId = table.Column<long>(nullable: false),
                     ProfileImageId = table.Column<int>(nullable: true),
+                    SyncPlayAccess = table.Column<int>(nullable: false),
                     RowVersion = table.Column<uint>(nullable: false)
                 },
                 constraints: table =>

+ 6 - 2
Jellyfin.Server.Implementations/Migrations/JellyfinDbModelSnapshot.cs

@@ -15,7 +15,7 @@ namespace Jellyfin.Server.Implementations.Migrations
 #pragma warning disable 612, 618
             modelBuilder
                 .HasDefaultSchema("jellyfin")
-                .HasAnnotation("ProductVersion", "3.1.3");
+                .HasAnnotation("ProductVersion", "3.1.4");
 
             modelBuilder.Entity("Jellyfin.Data.Entities.AccessSchedule", b =>
                 {
@@ -124,7 +124,8 @@ namespace Jellyfin.Server.Implementations.Migrations
 
                     b.Property<string>("Path")
                         .IsRequired()
-                        .HasColumnType("TEXT");
+                        .HasColumnType("TEXT")
+                        .HasMaxLength(512);
 
                     b.HasKey("Id");
 
@@ -326,6 +327,9 @@ namespace Jellyfin.Server.Implementations.Migrations
                     b.Property<int>("SubtitleMode")
                         .HasColumnType("INTEGER");
 
+                    b.Property<int>("SyncPlayAccess")
+                        .HasColumnType("INTEGER");
+
                     b.Property<string>("Username")
                         .IsRequired()
                         .HasColumnType("TEXT")

+ 2 - 1
Jellyfin.Server/Migrations/Routines/MigrateUserDb.cs

@@ -6,6 +6,7 @@ using Jellyfin.Data.Entities;
 using Jellyfin.Data.Enums;
 using Jellyfin.Server.Implementations;
 using Jellyfin.Server.Implementations.Users;
+using MediaBrowser.Common.Json;
 using MediaBrowser.Controller;
 using MediaBrowser.Controller.Entities;
 using MediaBrowser.Model.Configuration;
@@ -70,7 +71,7 @@ namespace Jellyfin.Server.Migrations.Routines
 
                 foreach (var entry in queryResult)
                 {
-                    UserMockup mockup = JsonSerializer.Deserialize<UserMockup>(entry[2].ToBlob());
+                    UserMockup mockup = JsonSerializer.Deserialize<UserMockup>(entry[2].ToBlob(), JsonDefaults.GetOptions());
                     var userDataDir = Path.Combine(_paths.UserConfigurationDirectoryPath, mockup.Name);
 
                     var config = File.Exists(Path.Combine(userDataDir, "config.xml"))