Startup Hanging

Describe the Bug
Startup hanging on:
LogNetVersion: Set ProjectVersion to ++FactoryGame+rel-main-0.5.0-CL-176027. Version Checksum will be recalculated on next use.
Looks like the next line is supposed to be:
[2021.10.26-20.03.56:162][  0]LogConsoleResponse: Display: Can't switch to RHI thread mode when we are not running a multithreaded renderer.
I tried to follow along with the example logs, and there were some differences but mostly it seemed to go along with it.
I'm just copy/pasting the exact compose file from the README until I get it running (with my path to the config volume mount), then I'll wipe everything and add my environment variables. I checked the PGID/PUID, they are right and should have access to the mount files (they're being created)
version: '3'
services:
    satisfactory-server:
        container_name: 'satisfactory-server'
        hostname: 'satisfactory-server'
        image: 'wolveix/satisfactory-server:latest'
        ports:
            - '7777:7777/udp'
            - '15000:15000/udp'
            - '15777:15777/udp'
        volumes:
            - '/path/to/config:/config'
        environment:
            - MAXPLAYERS=4
            - PGID=1000
            - PUID=1000
            - STEAMBETA=false
        restart: unless-stopped

System Specs (please complete the following information):
-OS Cetntos 8
I have several other minecraft servers working, the system has 64 GB of RAM and 2 x 2.8Ghz 20 core processors, so I don't think it's a hardware issue.
Additional Context
2022-01-09T15:47:04.125513610Z Setting autosave number to 3
2022-01-09T15:47:04.129581670Z Setting crash reporting to True
2022-01-09T15:47:04.135589871Z Setting max players to 10
2022-01-09T15:47:04.139570517Z Setting autosave interval to 300s
2022-01-09T15:47:04.144752861Z Setting disable seasonal events to 0
2022-01-09T15:47:04.148587799Z Setting auto pause to True
2022-01-09T15:47:04.152005116Z Setting autosave on disconnect to True
2022-01-09T15:47:04.158526031Z Checking available space...435GB detected
2022-01-09T15:47:04.158570344Z Downloading the latest version of the game...
2022-01-09T15:47:17.197570253Z Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'
2022-01-09T15:47:17.197622203Z [  0%] Checking for available updates...
2022-01-09T15:47:17.197629373Z [----] Downloading update (48 of 53,841 KB)...
2022-01-09T15:47:17.197634507Z [  0%] Downloading update (3,739 of 53,841 KB)...
2022-01-09T15:47:17.197639599Z [  6%] Downloading update (7,299 of 53,841 KB)...
2022-01-09T15:47:17.197644521Z [ 13%] Downloading update (10,007 of 53,841 KB)...
2022-01-09T15:47:17.197649595Z [ 18%] Downloading update (12,506 of 53,841 KB)...
2022-01-09T15:47:17.197655367Z [ 23%] Downloading update (15,007 of 53,841 KB)...
2022-01-09T15:47:17.197660914Z [ 27%] Downloading update (17,750 of 53,841 KB)...
2022-01-09T15:47:17.197666142Z [ 32%] Downloading update (20,264 of 53,841 KB)...
2022-01-09T15:47:17.197671145Z [ 37%] Downloading update (22,767 of 53,841 KB)...
2022-01-09T15:47:17.197675973Z [ 42%] Downloading update (25,279 of 53,841 KB)...
2022-01-09T15:47:17.197680810Z [ 46%] Downloading update (27,776 of 53,841 KB)...
2022-01-09T15:47:17.197685907Z [ 51%] Downloading update (30,252 of 53,841 KB)...
2022-01-09T15:47:17.197690679Z [ 56%] Downloading update (32,727 of 53,841 KB)...
2022-01-09T15:47:17.197695496Z [ 60%] Downloading update (35,489 of 53,841 KB)...
2022-01-09T15:47:17.197700547Z [ 65%] Downloading update (36,717 of 53,841 KB)...
2022-01-09T15:47:17.197705608Z [ 68%] Downloading update (37,973 of 53,841 KB)...
2022-01-09T15:47:17.197710336Z [ 70%] Downloading update (39,213 of 53,841 KB)...
2022-01-09T15:47:17.197715167Z [ 72%] Downloading update (40,456 of 53,841 KB)...
2022-01-09T15:47:17.197719910Z [ 75%] Downloading update (41,701 of 53,841 KB)...
2022-01-09T15:47:17.197724680Z [ 77%] Downloading update (42,945 of 53,841 KB)...
2022-01-09T15:47:17.197729309Z [ 79%] Downloading update (44,199 of 53,841 KB)...
2022-01-09T15:47:17.197734280Z [ 82%] Downloading update (45,449 of 53,841 KB)...
2022-01-09T15:47:17.197739837Z [ 84%] Downloading update (46,705 of 53,841 KB)...
2022-01-09T15:47:17.197745828Z [ 86%] Downloading update (47,948 of 53,841 KB)...
2022-01-09T15:47:17.197751223Z [ 89%] Downloading update (49,186 of 53,841 KB)...
2022-01-09T15:47:17.197782428Z [ 91%] Downloading update (50,427 of 53,841 KB)...
2022-01-09T15:47:17.197788763Z [ 93%] Downloading update (51,653 of 53,841 KB)...
2022-01-09T15:47:17.197793700Z [ 95%] Downloading update (52,886 of 53,841 KB)...
2022-01-09T15:47:17.197798590Z [ 98%] Downloading update (53,841 of 53,841 KB)...
2022-01-09T15:47:17.197803400Z [100%] Download complete.
2022-01-09T15:47:17.197808088Z [----] Installing update...
2022-01-09T15:47:17.197813050Z [----] Extracting package...
2022-01-09T15:47:17.197818325Z [----] Extracting package...
2022-01-09T15:47:17.197823962Z [----] Extracting package...
2022-01-09T15:47:17.197829628Z [----] Extracting package...
2022-01-09T15:47:17.197834680Z [----] Installing update...
2022-01-09T15:47:17.197839467Z [----] Installing update...
2022-01-09T15:47:17.197844203Z [----] Installing update...
2022-01-09T15:47:17.197848859Z [----] Installing update...
2022-01-09T15:47:17.197853524Z [----] Installing update...
2022-01-09T15:47:17.197858190Z [----] Installing update...
2022-01-09T15:47:17.197863044Z [----] Installing update...
2022-01-09T15:47:17.197867670Z [----] Installing update...
2022-01-09T15:47:17.197872271Z [----] Cleaning up...
2022-01-09T15:47:17.197876932Z [----] Update complete, launching Steamcmd...
2022-01-09T15:47:17.948524627Z Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'
2022-01-09T15:47:17.948573729Z [  0%] Checking for available updates...
2022-01-09T15:47:17.948580395Z [----] Verifying installation...
2022-01-09T15:47:17.948585693Z Steam Console Client (c) Valve Corporation - version<PHONE_NUMBER>
2022-01-09T15:47:17.948591186Z -- type 'quit' to exit --
2022-01-09T15:47:17.948596547Z Loading Steam API...OK
2022-01-09T15:47:17.948601973Z
2022-01-09T15:47:19.611538426Z Connecting anonymously to Steam Public...OK
2022-01-09T15:47:19.611583278Z Waiting for client config...OK
2022-01-09T15:47:24.274043316Z Waiting for user info...OK
2022-01-09T15:47:24.274085484Z Success! App '1690800' already up to date.
2022-01-09T15:47:24.804924777Z Project file not found: /config/gamefiles/FactoryGame/FactoryGame.uproject
2022-01-09T15:47:24.974948993Z sh: 1: xdg-user-dir: not found
2022-01-09T15:47:25.082401861Z 4.26.1-176027+++FactoryGame+rel-main-0.5.0 522 3
2022-01-09T15:47:25.082471661Z Disabling core dumps.
2022-01-09T15:47:25.082485134Z LogInit: Display: Running engine for game: FactoryGame
2022-01-09T15:47:25.082493163Z LogInit: Display: Project file not found: /config/gamefiles/FactoryGame/FactoryGame.uproject
2022-01-09T15:47:25.082500472Z LogInit: Display: 	Attempting to find via project info helper.
2022-01-09T15:47:25.082524811Z LogUProjectInfo: Found projects:
2022-01-09T15:47:25.082533542Z LogPakFile: Display: Found Pak file ../../../FactoryGame/Content/Paks/FactoryGame-LinuxServer.pak attempting to mount.
2022-01-09T15:47:25.082541174Z LogPakFile: Display: Mounting pak file ../../../FactoryGame/Content/Paks/FactoryGame-LinuxServer.pak.
2022-01-09T15:47:25.082549894Z LogPakFile: PakFile PrimaryIndexSize=598158
2022-01-09T15:47:25.082557456Z LogPakFile: PakFile PathHashIndexSize=681683
2022-01-09T15:47:25.082564732Z LogPakFile: PakFile FullDirectoryIndexSize=1899938
2022-01-09T15:47:25.082571321Z LogPakFile: OnPakFileMounted2Time == 0.000002
2022-01-09T15:47:25.082578666Z LogPlatformFile: Using cached read wrapper
2022-01-09T15:47:25.082585928Z LogTaskGraph: Started task graph with 4 named threads and 82 total threads with 3 sets of task threads.
2022-01-09T15:47:25.082593022Z LogICUInternationalization: ICU TimeZone Detection - Raw Offset: +0:00, Platform Override: ''
2022-01-09T15:47:25.082600855Z LogPluginManager: Mounting plugin ReplicationGraph
2022-01-09T15:47:25.082607341Z LogPluginManager: Mounting plugin DTLSHandlerComponent
2022-01-09T15:47:25.082614474Z LogPluginManager: Mounting plugin Wwise
2022-01-09T15:47:25.082622017Z LogPluginManager: Mounting plugin GeometryMode
2022-01-09T15:47:25.082628458Z LogPluginManager: Mounting plugin ApexDestruction
2022-01-09T15:47:25.082634686Z LogPluginManager: Mounting plugin BlueprintStats
2022-01-09T15:47:25.082640808Z LogPluginManager: Mounting plugin OnlineFramework
2022-01-09T15:47:25.082647019Z LogPluginManager: Mounting plugin OnlineSubsystem
2022-01-09T15:47:25.082653320Z LogPluginManager: Mounting plugin OnlineSubsystemUtils
2022-01-09T15:47:25.082659821Z LogPluginManager: Mounting plugin LensDistortion
2022-01-09T15:47:25.082666406Z LogPluginManager: Mounting plugin WindowsDeviceProfileSelector
2022-01-09T15:47:25.082672665Z LogPluginManager: Mounting plugin SteamController
2022-01-09T15:47:25.082679845Z LogPluginManager: Mounting plugin SteamShared
2022-01-09T15:47:25.082686118Z LogPluginManager: Mounting plugin RawInput
2022-01-09T15:47:25.082691764Z LogPluginManager: Mounting plugin MfMedia
2022-01-09T15:47:25.082697925Z LogPluginManager: Mounting plugin OnlineSubsystemSteam
2022-01-09T15:47:25.082704276Z LogPluginManager: Mounting plugin OnlineSubsystemEOS
2022-01-09T15:47:25.082710650Z LogPluginManager: Mounting plugin SignificanceManager
2022-01-09T15:47:25.082716473Z LogPluginManager: Mounting plugin PythonScriptPlugin
2022-01-09T15:47:25.082722616Z LogPluginManager: Mounting plugin EditorScriptingUtilities
2022-01-09T15:47:25.082728434Z LogPluginManager: Mounting plugin EditorTests
2022-01-09T15:47:25.082736550Z LogPluginManager: Mounting plugin FbxAutomationTestBuilder
2022-01-09T15:47:25.082749238Z LogPluginManager: Mounting plugin FunctionalTestingEditor
2022-01-09T15:47:25.082756152Z LogPluginManager: Mounting plugin RuntimeTests
2022-01-09T15:47:25.082762076Z LogPluginManager: Mounting plugin ScreenshotTools
2022-01-09T15:47:25.082767947Z LogPluginManager: Mounting plugin CSSEditorToolsExtension
2022-01-09T15:47:25.082773912Z LogPluginManager: Mounting plugin Paper2D
2022-01-09T15:47:25.082780372Z LogPluginManager: Mounting plugin AISupport
2022-01-09T15:47:25.082786379Z LogPluginManager: Mounting plugin EnvironmentQueryEditor
2022-01-09T15:47:25.082792723Z LogPluginManager: Mounting plugin LightPropagationVolume
2022-01-09T15:47:25.082798778Z LogPluginManager: Mounting plugin AnimationSharing
2022-01-09T15:47:25.082804646Z LogPluginManager: Mounting plugin PluginUtils
2022-01-09T15:47:25.082811321Z LogPluginManager: Mounting plugin PropertyAccessEditor
2022-01-09T15:47:25.082817996Z LogPluginManager: Mounting plugin UObjectPlugin
2022-01-09T15:47:25.082823954Z LogPluginManager: Mounting plugin AssetManagerEditor
2022-01-09T15:47:25.082831730Z LogPluginManager: Mounting plugin FacialAnimation
2022-01-09T15:47:25.082839022Z LogPluginManager: Mounting plugin SpeedTreeImporter
2022-01-09T15:47:25.082845317Z LogPluginManager: Mounting plugin DatasmithContent
2022-01-09T15:47:25.082851386Z LogPluginManager: Mounting plugin VariantManagerContent
2022-01-09T15:47:25.082858252Z LogPluginManager: Mounting plugin AlembicImporter
2022-01-09T15:47:25.082864647Z LogPluginManager: Mounting plugin GeometryCache
2022-01-09T15:47:25.082870713Z LogPluginManager: Mounting plugin AutomationUtils
2022-01-09T15:47:25.082877051Z LogPluginManager: Mounting plugin BackChannel
2022-01-09T15:47:25.082883461Z LogPluginManager: Mounting plugin ChaosClothEditor
2022-01-09T15:47:25.082889580Z LogPluginManager: Mounting plugin ChaosCloth
2022-01-09T15:47:25.082895941Z LogPluginManager: Mounting plugin ChaosEditor
2022-01-09T15:47:25.082902536Z LogPluginManager: Mounting plugin PlanarCut
2022-01-09T15:47:25.082909844Z LogPluginManager: Mounting plugin GeometryProcessing
2022-01-09T15:47:25.082916755Z LogPluginManager: Mounting plugin EditableMesh
2022-01-09T15:47:25.082923818Z LogPluginManager: Mounting plugin GeometryCollectionPlugin
2022-01-09T15:47:25.082930329Z LogPluginManager: Mounting plugin ProceduralMeshComponent
2022-01-09T15:47:25.082936997Z LogPluginManager: Mounting plugin ChaosSolverPlugin
2022-01-09T15:47:25.082943664Z LogPluginManager: Mounting plugin ChaosNiagara
2022-01-09T15:47:25.082949921Z LogPluginManager: Mounting plugin Niagara
2022-01-09T15:47:25.082956249Z LogPluginManager: Mounting plugin CharacterAI
2022-01-09T15:47:25.082962205Z LogPluginManager: Mounting plugin MotoSynth
2022-01-09T15:47:25.082978473Z LogPluginManager: Mounting plugin PlatformCrypto
2022-01-09T15:47:25.082985743Z LogPluginManager: Mounting plugin ImgMedia
2022-01-09T15:47:25.082992021Z LogPluginManager: Mounting plugin MediaCompositing
2022-01-09T15:47:25.082998911Z LogPluginManager: Mounting plugin MeshPainting
2022-01-09T15:47:25.083005076Z LogPluginManager: Mounting plugin TcpMessaging
2022-01-09T15:47:25.083011942Z LogPluginManager: Mounting plugin UdpMessaging
2022-01-09T15:47:25.286959173Z LogPluginManager: Mounting plugin ActorSequence
2022-01-09T15:47:25.287016644Z LogPluginManager: Mounting plugin LevelSequenceEditor
2022-01-09T15:47:25.287025394Z LogPluginManager: Mounting plugin MatineeToLevelSequence
2022-01-09T15:47:25.287033396Z LogPluginManager: Mounting plugin TemplateSequence
2022-01-09T15:47:25.287039764Z LogPluginManager: Mounting plugin OnlineSubsystemNull
2022-01-09T15:47:25.287044415Z LogPluginManager: Mounting plugin LauncherChunkInstaller
2022-01-09T15:47:25.287048604Z LogPluginManager: Mounting plugin ActorLayerUtilities
2022-01-09T15:47:25.287052804Z LogPluginManager: Mounting plugin AppleImageUtils
2022-01-09T15:47:25.287056974Z LogPluginManager: Mounting plugin AssetTags
2022-01-09T15:47:25.287061133Z LogPluginManager: Mounting plugin AudioCapture
2022-01-09T15:47:25.287065186Z LogPluginManager: Mounting plugin CableComponent
2022-01-09T15:47:25.287069277Z LogPluginManager: Mounting plugin ChunkDownloader
2022-01-09T15:47:25.287073311Z LogPluginManager: Mounting plugin CustomMeshComponent
2022-01-09T15:47:25.287077402Z LogPluginManager: Mounting plugin ExampleDeviceProfileSelector
2022-01-09T15:47:25.287081514Z LogPluginManager: Mounting plugin GooglePAD
2022-01-09T15:47:25.287085483Z LogPluginManager: Mounting plugin LinuxDeviceProfileSelector
2022-01-09T15:47:25.287089618Z LogPluginManager: Mounting plugin PhysXVehicles
2022-01-09T15:47:25.287098869Z LogPluginManager: Mounting plugin RuntimePhysXCooking
2022-01-09T15:47:25.287105356Z LogPluginManager: Mounting plugin SoundFields
2022-01-09T15:47:25.287112622Z LogPluginManager: Mounting plugin Synthesis
2022-01-09T15:47:25.287117421Z LogPluginManager: Mounting plugin AudioSynesthesia
2022-01-09T15:47:25.287121568Z LogInit: Using libcurl 7.65.3-DEV
2022-01-09T15:47:25.287125623Z LogInit:  - built for x86_64-unknown-linux-gnu
2022-01-09T15:47:25.287129711Z LogInit:  - supports SSL with OpenSSL/1.1.1c
2022-01-09T15:47:25.287133873Z LogInit:  - supports HTTP deflate (compression) using libz 1.2.8
2022-01-09T15:47:25.287138112Z LogInit:  - other features:
2022-01-09T15:47:25.287142129Z LogInit:      CURL_VERSION_SSL
2022-01-09T15:47:25.287146094Z LogInit:      CURL_VERSION_LIBZ
2022-01-09T15:47:25.287150126Z LogInit:      CURL_VERSION_IPV6
2022-01-09T15:47:25.287168976Z LogInit:      CURL_VERSION_ASYNCHDNS
2022-01-09T15:47:25.287173769Z LogInit:      CURL_VERSION_LARGEFILE
2022-01-09T15:47:25.287178877Z LogInit:      CURL_VERSION_TLSAUTH_SRP
2022-01-09T15:47:25.287186348Z LogInit:  CurlRequestOptions (configurable via config and command line):
2022-01-09T15:47:25.287192835Z LogInit:  - bVerifyPeer = true  - Libcurl will verify peer certificate
2022-01-09T15:47:25.287197291Z LogInit:  - bUseHttpProxy = false  - Libcurl will NOT use HTTP proxy
2022-01-09T15:47:25.287201600Z LogInit:  - bDontReuseConnections = false  - Libcurl will reuse connections
2022-01-09T15:47:25.287205980Z LogInit:  - MaxHostConnections = 16  - Libcurl will limit the number of connections to a host
2022-01-09T15:47:25.287210641Z LogInit:  - LocalHostAddr = Default
2022-01-09T15:47:25.287214835Z LogInit:  - BufferSize = 65536
2022-01-09T15:47:25.287218908Z Shutdown handler: initalize.
2022-01-09T15:47:25.287222948Z LogOnline: OSS: Creating online subsystem instance for: EOS
2022-01-09T15:47:25.287228845Z LogOnline: OSS: FOnlineSubsystemEOS: Init success.
2022-01-09T15:47:25.287233492Z LogSteamShared: Display: Loading Steam SDK 1.47
2022-01-09T15:47:25.287237788Z LogCore: Warning: dlopen failed: /config/gamefiles/Engine/Binaries/Linux/libsteam_api.so: cannot open shared object file: No such file or directory
2022-01-09T15:47:25.287242330Z LogSteamShared: Warning: Could not find system one, loading bundled libsteam_api.so.
2022-01-09T15:47:25.287246672Z LogSteamShared: Display: Loaded libsteam_api.so at 0x14acb40
2022-01-09T15:47:25.287250718Z LogSteamShared: Steam SDK Loaded!
2022-01-09T15:47:25.287255054Z LogOnline: OSS: Creating online subsystem instance for: STEAM
2022-01-09T15:47:25.287261998Z LogOnline: Warning: STEAM: Steam API failed to initialize!
2022-01-09T15:47:25.287273175Z LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
2022-01-09T15:47:25.287283030Z LogOnline: OSS: Unable to create OnlineSubsystem module STEAM
2022-01-09T15:47:25.287288322Z LogOnline: OSS: TryLoadSubsystemAndSetDefault: Loaded subsystem for module [EOS]
2022-01-09T15:47:25.287292874Z LogOnline: OSS: Creating online subsystem instance for: STEAM
2022-01-09T15:47:25.287297238Z LogOnline: Warning: STEAM: Steam API failed to initialize!
2022-01-09T15:47:25.287301640Z LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
2022-01-09T15:47:25.287305917Z LogInit: Build: ++FactoryGame+rel-main-0.5.0-CL-176027
2022-01-09T15:47:25.287310178Z LogInit: Engine Version: 4.26.1-176027+++FactoryGame+rel-main-0.5.0
2022-01-09T15:47:25.287314532Z LogInit: Compatible Engine Version: 4.26.1-176027+++FactoryGame+rel-main-0.5.0
2022-01-09T15:47:25.287318980Z LogInit: Net CL: 176027
2022-01-09T15:47:25.287323169Z LogInit: OS: GenericOSVersionLabel (GenericOSSubVersionLabel), CPU:       Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz, GPU: GenericGPUBrand
2022-01-09T15:47:25.287334260Z LogInit: Compiled (64-bit): Dec  1 2021 15:49:21
2022-01-09T15:47:25.287345610Z LogInit: Compiled with Clang: 10.0.1 (https://github.com/llvm/llvm-project ef32c611aa214dea855364efd7ba451ec5ec3f74)
2022-01-09T15:47:25.287354582Z LogInit: Build Configuration: Shipping
2022-01-09T15:47:25.287359309Z LogInit: Branch Name: ++FactoryGame+rel-main-0.5.0
2022-01-09T15:47:25.287363600Z LogInit: Command Line:  -log -NoSteamClient -unattended ?listen -Port=7777 -BeaconPort=15000 -ServerQueryPort=15777 -multihome=<IP_ADDRESS>
2022-01-09T15:47:25.287368317Z LogInit: Base Directory: /config/gamefiles/Engine/Binaries/Linux/
2022-01-09T15:47:25.287372626Z LogInit: Allocator: binned2
2022-01-09T15:47:25.287376800Z LogInit: Installed Engine Build: 0
2022-01-09T15:47:25.287380963Z LogInit: Launcher File: /config/gamefiles/launcher_id
2022-01-09T15:47:25.287385185Z LogInit: Launcher ID: steam
2022-01-09T15:47:25.287389289Z LogInit: Launcher Artifact:
2022-01-09T15:47:25.287393365Z LogInit: Presizing for max 2097152 objects, including 1 objects not considered by GC, pre-allocating 0 bytes for permanent pool.
2022-01-09T15:47:25.293334079Z LogStreaming: Display: Async Loading initialized: Event Driven Loader: true, Async Loading Thread: true, Async Post Load: true
2022-01-09T15:47:25.293371622Z LogInit: Object subsystem initialized
2022-01-09T15:47:25.293384448Z [2022.01.09-15.47.25:292][  0]LogLinux: Selected Device Profile: [LinuxServer]
2022-01-09T15:47:25.293394962Z [2022.01.09-15.47.25:292][  0]LogInit: Applying CVar settings loaded from the selected device profile: [LinuxServer]
2022-01-09T15:47:25.293405588Z [2022.01.09-15.47.25:292][  0]LogHAL: Display: Platform has ~ 4 GB [58830446592 /<PHONE_NUMBER> / 55], which maps to Smallest [LargestMinGB=32, LargerMinGB=12, DefaultMinGB=8, SmallerMinGB=6, SmallestMinGB=0)
2022-01-09T15:47:25.293415587Z [2022.01.09-15.47.25:292][  0]LogInit: Going up to parent DeviceProfile [Linux]
2022-01-09T15:47:25.293425410Z [2022.01.09-15.47.25:292][  0]LogInit: Going up to parent DeviceProfile []
2022-01-09T15:47:25.293446944Z [2022.01.09-15.47.25:292][  0]LogInit: Unix hardware info:
2022-01-09T15:47:25.293458377Z [2022.01.09-15.47.25:292][  0]LogInit:  - we are the first instance of this executable
2022-01-09T15:47:25.293467985Z [2022.01.09-15.47.25:292][  0]LogInit:  - this process' id (pid) is 1, parent process' id (ppid) is 0
2022-01-09T15:47:25.293477663Z [2022.01.09-15.47.25:292][  0]LogInit:  - we are not running under debugger
2022-01-09T15:47:25.293485632Z [2022.01.09-15.47.25:292][  0]LogInit:  - machine network name is 'satisfactory-server'
2022-01-09T15:47:25.293492354Z [2022.01.09-15.47.25:292][  0]LogInit:  - user name is 'steam' (steam)
2022-01-09T15:47:25.293498704Z [2022.01.09-15.47.25:292][  0]LogInit:  - we're logged in locally
2022-01-09T15:47:25.293504728Z [2022.01.09-15.47.25:292][  0]LogInit:  - we're running without rendering
2022-01-09T15:47:25.293510819Z [2022.01.09-15.47.25:292][  0]LogInit:  - CPU: GenuineIntel '      Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz' (signature: 0x306E4)
2022-01-09T15:47:25.293526668Z [2022.01.09-15.47.25:292][  0]LogInit:  - Number of physical cores available for the process: 40
2022-01-09T15:47:25.293534284Z [2022.01.09-15.47.25:292][  0]LogInit:  - Number of logical cores available for the process: 40
2022-01-09T15:47:25.293541012Z [2022.01.09-15.47.25:292][  0]LogInit:  - Cache line size: 64
2022-01-09T15:47:25.293546996Z [2022.01.09-15.47.25:292][  0]LogInit:  - Memory allocator used: binned2
2022-01-09T15:47:25.293553153Z [2022.01.09-15.47.25:292][  0]LogInit:  - This binary is optimized with LTO: no, PGO: no, instrumented for PGO data collection: no
2022-01-09T15:47:25.293559670Z [2022.01.09-15.47.25:292][  0]LogInit:  - This is a licensee build.
2022-01-09T15:47:25.293565952Z [2022.01.09-15.47.25:293][  0]LogCore: Benchmarking clocks:
2022-01-09T15:47:25.293573960Z [2022.01.09-15.47.25:293][  0]LogCore:  - CLOCK_MONOTONIC (id=1) can sustain 35984338 (35984K, 36M) calls per second without zero deltas.
2022-01-09T15:47:25.293581084Z [2022.01.09-15.47.25:293][  0]LogCore:  - CLOCK_MONOTONIC_RAW (id=4) can sustain 35398920 (35399K, 35M) calls per second without zero deltas.
2022-01-09T15:47:25.293587669Z [2022.01.09-15.47.25:293][  0]LogCore:  - CLOCK_MONOTONIC_COARSE (id=6) can sustain 52979281 (52979K, 53M) calls per second with 99.998094% zero deltas.
2022-01-09T15:47:25.293594597Z [2022.01.09-15.47.25:293][  0]LogCore: Selected clock_id 1 (CLOCK_MONOTONIC) since it is the fastest support clock without zero deltas.
2022-01-09T15:47:25.293601136Z [2022.01.09-15.47.25:293][  0]LogInit: Unix-specific commandline switches:
2022-01-09T15:47:25.293607464Z [2022.01.09-15.47.25:293][  0]LogInit:  -ansimalloc - use malloc()/free() from libc (useful for tools like valgrind and electric fence)
2022-01-09T15:47:25.293614034Z [2022.01.09-15.47.25:293][  0]LogInit:  -jemalloc - use jemalloc for all memory allocation
2022-01-09T15:47:25.293620361Z [2022.01.09-15.47.25:293][  0]LogInit:  -binnedmalloc - use binned malloc  for all memory allocation
2022-01-09T15:47:25.293626825Z [2022.01.09-15.47.25:293][  0]LogInit:  -filemapcachesize=NUMBER - set the size for case-sensitive file mapping cache
2022-01-09T15:47:25.293633178Z [2022.01.09-15.47.25:293][  0]LogInit:  -useksm - uses kernel same-page mapping (KSM) for mapped memory (OFF)
2022-01-09T15:47:25.293639787Z [2022.01.09-15.47.25:293][  0]LogInit:  -ksmmergeall - marks all mmap'd memory pages suitable for KSM (OFF)
2022-01-09T15:47:25.293647733Z [2022.01.09-15.47.25:293][  0]LogInit:  -preloadmodulesymbols - Loads the main module symbols file into memory (OFF)
2022-01-09T15:47:25.293654436Z [2022.01.09-15.47.25:293][  0]LogInit:  -sigdfl=SIGNAL - Allows a specific signal to be set to its default handler rather then ignoring the signal
2022-01-09T15:47:25.293661216Z [2022.01.09-15.47.25:293][  0]LogInit:  -httpproxy=ADDRESS:PORT - redirects HTTP requests to a proxy (only supported if compiled with libcurl)
2022-01-09T15:47:25.293667799Z [2022.01.09-15.47.25:293][  0]LogInit:  -reuseconn - allow libcurl to reuse HTTP connections (only matters if compiled with libcurl)
2022-01-09T15:47:25.293680605Z [2022.01.09-15.47.25:293][  0]LogInit:  -virtmemkb=NUMBER - sets process virtual memory (address space) limit (overrides VirtualMemoryLimitInKB value from .ini)
2022-01-09T15:47:27.479276257Z [2022.01.09-15.47.25:293][  0]LogInit:  - Physical RAM available (not considering process quota): 55 GB (56105 MB, 57451608 KB,<PHONE_NUMBER>2 bytes)
2022-01-09T15:47:27.479337302Z [2022.01.09-15.47.25:293][  0]LogInit:  - VirtualMemoryAllocator pools will grow at scale 1.4
2022-01-09T15:47:27.479350075Z [2022.01.09-15.47.25:293][  0]LogInit:  - MemoryRangeDecommit() will will evict the memory from RAM (re-run with -novmapoolevict to change)
2022-01-09T15:47:27.479357851Z [2022.01.09-15.47.25:312][  0]LogInit: Physics initialised using underlying interface: PhysX
2022-01-09T15:47:27.479366140Z [2022.01.09-15.47.25:313][  0]LogInit: Overriding language with engine language configuration option (en-US-Posix).
2022-01-09T15:47:27.479373433Z [2022.01.09-15.47.25:313][  0]LogInit: Overriding language with engine locale configuration option (en-US-Posix).
2022-01-09T15:47:27.479381395Z [2022.01.09-15.47.25:319][  0]LogTextLocalizationResource: LocRes '../../../Engine/Content/Localization/Engine/en-US-POSIX/Engine.locres' could not be opened for reading!
2022-01-09T15:47:27.479388258Z [2022.01.09-15.47.25:319][  0]LogTextLocalizationResource: LocRes '../../../Engine/Plugins/Online/OnlineFramework/Content/Localization/OnlineFramework/en-US-POSIX/OnlineFramework.locres' could not be opened for reading!
2022-01-09T15:47:27.479397666Z [2022.01.09-15.47.25:319][  0]LogTextLocalizationResource: LocRes '../../../Engine/Plugins/Online/OnlineSubsystem/Content/Localization/OnlineSubsystem/en-US-POSIX/OnlineSubsystem.locres' could not be opened for reading!
2022-01-09T15:47:27.479415471Z [2022.01.09-15.47.25:319][  0]LogTextLocalizationResource: LocRes '../../../Engine/Plugins/Online/OnlineSubsystemUtils/Content/Localization/OnlineSubsystemUtils/en-US-POSIX/OnlineSubsystemUtils.locres' could not be opened for reading!
2022-01-09T15:47:27.479445973Z [2022.01.09-15.47.25:319][  0]LogTextLocalizationResource: LocRes '../../../Engine/Plugins/Online/OnlineSubsystemSteam/Content/Localization/OnlineSubsystemSteam/en-US-POSIX/OnlineSubsystemSteam.locres' could not be opened for reading!
2022-01-09T15:47:27.479462108Z [2022.01.09-15.47.25:339][  0]LogRendererCore: Ray tracing is disabled. Reason: r.RayTracing=0.
2022-01-09T15:47:27.479470894Z [2022.01.09-15.47.25:353][  0]LogInit: Overriding language with engine language configuration option (en-US-Posix).
2022-01-09T15:47:27.479482109Z [2022.01.09-15.47.25:353][  0]LogInit: Overriding language with engine locale configuration option (en-US-Posix).
2022-01-09T15:47:27.479493537Z [2022.01.09-15.47.25:359][  0]LogTextLocalizationResource: LocRes '../../../FactoryGame/Content/Localization/Game/en/Game.locres' could not be opened for reading!
2022-01-09T15:47:27.479501604Z [2022.01.09-15.47.25:367][  0]LogTextLocalizationManager: Compacting localization data took   1.64ms
2022-01-09T15:47:27.479508552Z [2022.01.09-15.47.25:486][  0]LogAssetRegistry: FAssetRegistry took 0.1007 seconds to start up
2022-01-09T15:47:27.479516129Z [2022.01.09-15.47.25:562][  0]LogStreaming: Display: FlushAsyncLoading: 1 QueuedPackages, 0 AsyncPackages
2022-01-09T15:47:27.479542256Z [2022.01.09-15.47.25:562][  0]LogPackageLocalizationCache: Processed 23 localized package path(s) for 2 prioritized culture(s) in 0.000150 seconds
2022-01-09T15:47:27.479552166Z [2022.01.09-15.47.25:562][  0]LogPakFile: New pak file ../../../FactoryGame/Content/Paks/FactoryGame-LinuxServer.pak added to pak precacher.
2022-01-09T15:47:27.479559163Z [2022.01.09-15.47.25:563][  0]LogLinux: Selected Device Profile: [LinuxServer]
2022-01-09T15:47:27.479565974Z [2022.01.09-15.47.25:563][  0]LogInit: Active device profile: [0x7f774a9dbe00][0x7f776f156280 49] LinuxServer
2022-01-09T15:47:27.479572906Z [2022.01.09-15.47.25:563][  0]LogInit: Profiles: [0x7f774a9dbf80][0x7f776f157630 49] Linux, [0x7f774a9dbe00][0x7f776f156280 49] LinuxServer,
2022-01-09T15:47:27.479580181Z [2022.01.09-15.47.25:575][  0]LogSerialization: Display: AllowBulkDataInIoStore: 'true'
2022-01-09T15:47:27.479586948Z [2022.01.09-15.47.25:575][  0]LogNetVersion: FactoryGame 1.0.0, NetCL: 176027, EngineNetVer: 16, GameNetVer: 0 (Checksum:<PHONE_NUMBER>)
2022-01-09T15:47:27.479593787Z [2022.01.09-15.47.25:957][  0]LogActor: Warning: SetReplicates called on non-initialized actor Default__FGSimulatedWheeledVehicle. Directly setting bReplicates is the correct procedure for pre-init actors.
2022-01-09T15:47:27.479600827Z [2022.01.09-15.47.26:092][  0]LogNiagara: Warning: NiagaraSystem /Game/FactoryGame/VFX/Factory/Doors/NS_DoorClose_01.NS_DoorClose_01 IsReadyToRunInternal() failed due to missing SystemScript.  Spawn[<none>] Update[<none>]
2022-01-09T15:47:27.479608329Z [2022.01.09-15.47.27:479][  0]LogPakFile: Precache HighWater 16MB
2022-01-09T15:47:27.479615081Z
2022-01-09T15:47:27.479621577Z [2022.01.09-15.47.27:479][  0]LogPakFile: Precache HighWater 32MB
2022-01-09T15:47:27.479628850Z
2022-01-09T15:47:27.479636886Z [2022.01.09-15.47.27:479][  0]LogPakFile: Precache HighWater 48MB
2022-01-09T15:47:27.479647129Z
2022-01-09T15:47:27.479653782Z [2022.01.09-15.47.27:479][  0]LogPakFile: Precache HighWater 64MB
2022-01-09T15:47:27.479660971Z
2022-01-09T15:47:27.866107920Z [2022.01.09-15.47.27:479][  0]LogPakFile: Precache HighWater 80MB
2022-01-09T15:47:27.866194242Z
2022-01-09T15:47:27.866210491Z [2022.01.09-15.47.27:479][  0]LogNiagara: Warning: NiagaraSystem /Game/FactoryGame/VFX/World/AmbientLife/Flies/NS_Fireflies_01.NS_Fireflies_01 IsReadyToRunInternal() failed due to missing SystemScript.  Spawn[<none>] Update[<none>]
2022-01-09T15:47:27.866225434Z [2022.01.09-15.47.27:479][  0]LogNiagara: Warning: NiagaraSystem /Game/FactoryGame/VFX/World/AmbientLife/Bats/NS_Bats_01.NS_Bats_01 IsReadyToRunInternal() failed due to missing SystemScript.  Spawn[<none>] Update[<none>]
2022-01-09T15:47:27.866238326Z [2022.01.09-15.47.27:480][  0]LogNiagara: Warning: NiagaraSystem /Game/FactoryGame/VFX/Misc/Event/Christmas/NS_Fireworks_02.NS_Fireworks_02 IsReadyToRunInternal() failed due to missing SystemScript.  Spawn[<none>] Update[<none>]
2022-01-09T15:47:27.866250866Z [2022.01.09-15.47.27:480][  0]LogNiagara: Warning: NiagaraSystem /Game/FactoryGame/VFX/Misc/Event/Christmas/NS_Fireworks_01.NS_Fireworks_01 IsReadyToRunInternal() failed due to missing SystemScript.  Spawn[<none>] Update[<none>]
2022-01-09T15:47:27.866287024Z [2022.01.09-15.47.27:480][  0]LogNiagara: Warning: NiagaraSystem /Game/FactoryGame/VFX/Misc/Event/Christmas/NS_Fireworks_03.NS_Fireworks_03 IsReadyToRunInternal() failed due to missing SystemScript.  Spawn[<none>] Update[<none>]
2022-01-09T15:47:27.866300202Z [2022.01.09-15.47.27:661][  0]GameAnalyticsModule: Display: GameAnalyticsModule has started!
2022-01-09T15:47:27.866310965Z [2022.01.09-15.47.27:661][  0]LogStreaming: Warning: Failed to read file '../../../FactoryGame/Saved/SaveGames/GameAnalytics.sav' error.
2022-01-09T15:47:27.866322169Z [2022.01.09-15.47.27:786][  0]LogAudioCaptureCore: Display: No Audio Capture implementations found. Audio input will be silent.
2022-01-09T15:47:27.866361537Z [2022.01.09-15.47.27:787][  0]LogAudioCaptureCore: Display: No Audio Capture implementations found. Audio input will be silent.
2022-01-09T15:47:27.866373129Z [2022.01.09-15.47.27:812][  0]LogUObjectArray: 52704 objects as part of root set at end of initial load.
2022-01-09T15:47:27.866384005Z [2022.01.09-15.47.27:812][  0]LogUObjectArray: 2 objects are not in the root set, but can never be destroyed because they are in the DisregardForGC set.
2022-01-09T15:47:27.866394905Z [2022.01.09-15.47.27:812][  0]LogUObjectAllocator: 16811056 out of 0 bytes used by permanent object pool.
2022-01-09T15:47:27.866408120Z [2022.01.09-15.47.27:812][  0]LogUObjectArray: CloseDisregardForGC: 52704/52704 objects in disregard for GC pool
2022-01-09T15:47:27.866419424Z [2022.01.09-15.47.27:813][  0]LogEngine: Initializing Engine...
2022-01-09T15:47:27.866444054Z [2022.01.09-15.47.27:815][  0]LogStats: UGameplayTagsManager::InitializeManager -  0.002 s
2022-01-09T15:47:27.866462879Z [2022.01.09-15.47.27:828][  0]LogInit: Initializing FReadOnlyCVARCache
2022-01-09T15:47:27.866478360Z [2022.01.09-15.47.27:828][  0]LogNetVersion: Set ProjectVersion to <IP_ADDRESS>. Version Checksum will be recalculated on next use.
2022-01-09T15:47:27.866489030Z [2022.01.09-15.47.27:828][  0]LogInit: Texture streaming: Disabled
2022-01-09T15:47:27.866498870Z [2022.01.09-15.47.27:863][  0]LogOnline: OSS: Creating online subsystem instance for: STEAM
2022-01-09T15:47:27.866508851Z [2022.01.09-15.47.27:863][  0]LogOnline: Warning: STEAM: Steam API failed to initialize!
2022-01-09T15:47:27.866518725Z [2022.01.09-15.47.27:863][  0]LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
2022-01-09T15:47:27.866528512Z [2022.01.09-15.47.27:863][  0]LogOnline: OSS: Creating online subsystem instance for: STEAM
2022-01-09T15:47:27.866538299Z [2022.01.09-15.47.27:863][  0]LogOnline: Warning: STEAM: Steam API failed to initialize!
2022-01-09T15:47:27.866557879Z [2022.01.09-15.47.27:863][  0]LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
2022-01-09T15:47:27.866568448Z [2022.01.09-15.47.27:864][  0]LogOnline: OSS: Creating online subsystem instance for: STEAM
2022-01-09T15:47:27.866578316Z [2022.01.09-15.47.27:864][  0]LogOnline: Warning: STEAM: Steam API failed to initialize!
2022-01-09T15:47:27.866588353Z [2022.01.09-15.47.27:864][  0]LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
2022-01-09T15:47:27.866608565Z [2022.01.09-15.47.27:864][  0]LogServerQuery: Bound Server Query Socket to address '<IP_ADDRESS>:15777'(IPv4)
2022-01-09T15:47:27.866619706Z [2022.01.09-15.47.27:865][  0]LogGame: MaxNumBackupsaves: 25
2022-01-09T15:47:27.866629864Z [2022.01.09-15.47.27:865][  0]GameAnalyticsModule: Display: Loaded GUID C4C3FF44-9B55-4A81-8308-E1E225652056
2022-01-09T15:47:27.866640005Z [2022.01.09-15.47.27:865][  0]LogOnline: Warning: OSS: [EOS SDK | Plugin] Begin Player Session...
2022-01-09T15:47:27.866650216Z [2022.01.09-15.47.27:865][  0]LogInit: Display: Game Engine Initialized.
2022-01-09T15:47:27.866680673Z [2022.01.09-15.47.27:865][  0]LogNetVersion: Set ProjectVersion to ++FactoryGame+rel-main-0.5.0-CL-176027. Version Checksum will be recalculated on next use.

Thanks for taking the time to open this issue :)
It doesn't look like it's hanging at all. How are you trying to connect? What happens when you try to connect?

Thanks for taking the time to make this image!
Thanks for the input on the server not hanging. Like I said I had other minecraft servers working so I thought the whole firewall/portforward pipeline was right, and assumed I had messed something up with the server. I cleared everything and tried again, and it worked. My gaming computer is on a second router, so it couldn't access the server on the LAN, which was one issue. The other was that I only opened UDP ports on the router. Once I opened both TCP and UDP, I could connect with my public IP.

 Yeah, 9 times out of 10 when someone opens an issue like this and the log looks fine, it's going to be a networking-related issue. I'm glad you got it figured out!
Feel free to open another issue if you run into any other issues :)


Anonymous editing

Description
Users who want to test new features, should also get a preview, of the editor, the signup wall, slows down adoption, we're not chatGPT 😂😂
Use Case
For showing typst.app to a colleague on his computer really quick

Isn't that already possible by creating the share link (upper right in the editor)?

Isn't that already possible by creating the share link (upper right in the editor)?

I think they mean having something like typst.app/playground which would let you quickly compile some Typst in the browser without needing an account.

Isn't that already possible by creating the share link (upper right in the editor)?

I think they mean having something like typst.app/playground which would let you quickly compile some Typst in the browser without needing an account.

Yes, I don't think this can be abused in a way, can it? Nobody needs to create an account to see if typst is the right choice for them, it's bad user experience.


Please confirm these before moving forward

[X] I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
[X] I have not been informed if the issue is resolved in a preview version of the winget client.

Category of the issue
Installer hash mismatch.
Brief description of your issue
Installer hash does not match when installing Kobo [Kobo.Kobo] Version 4.33.17487 (re-occurance of #68089).
Steps to reproduce
winget install Kobo.Kobo

Actual behavior
Found Kobo [Kobo.Kobo] Version 4.33.17487
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://kbdownload1-a.akamaihd.net/desktop/kobodesktop/kobosetup.exe
  ██████████████████████████████  63.1 MB / 63.1 MB
Installer hash does not match.

Expected behavior
Installer hash to match expected hash.
Environment
Windows: Windows.Desktop v10.0.22621.1778
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.19.11071.0

Logs: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

User Settings: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json

Screenshots and Logs
Found Kobo [Kobo.Kobo] Version 4.33.17487
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://kbdownload1-a.akamaihd.net/desktop/kobodesktop/kobosetup.exe
  ██████████████████████████████  63.1 MB / 63.1 MB
Installer hash does not match.

It look like it is a popular Enterprise CDN.


Incorporate NOAA internal review edits

This is largely for the one-page and executive summary.

closed with https://github.com/pacific-hake/hake-assessment/commit/145d57296d1d7fb7b2b8dd4f6daba424028c9369


Explicitly set postscript mpl backend for gate map tests

Summary
The gate map tests with layout added in #2928 built the reference images
assuming the postscript backend. This causes these tests to fail in any
environment where 'ps' isn't set as the backend. This happens fairly
regularly on local environments where normally an interactive backend is
used depending on your OS. This is just another example of how image
comparison tests are unreliable. This commit works around this issue by
having the test be opinionated about it's backend an explicitly setting
the backend to be 'ps' prior to running the tests where that's required
to make the images match.
Details and comments
Fixes #2982

Should you also remove the env in azure's config?

this PR is an alternative to #2949


Slope Limit

Implementation of Slope Limiting, to emulate the TRC handling of other CMMs on a per-transform basis, as discussed in the Lcms-user mailing list.
Currently, the following emulation settings are known from tests performed on Mac OS X 10.9:

CMM
flags for cmsCreateTransform() and cmsCreateTransformTHR()
state

Adobe CMM
cmsFLAGS_SLOPE_LIMIT_32  cmsFLAGS_BLACKPOINTCOMPENSATION

Apple ColorSync 32 bit
no flags
old 32 bit ColorSync API, deprecated in Mac OS X 10.6 in 2009, confirmed for the version included in Mac OS X 10.9

Apple ColorSync 64 bit
cmsFLAGS_SLOPE_LIMIT_16
new 64 bit ColorSync API introduced in Mac OS X 10.6 in 2009, confirmed for the version included in Mac OS X 10.9

Canon ColorGear CMM
no flags
confirmed for 32 bit version 2.27 for Mac OS X from 2008

Kodak CMM
cmsFLAGS_SLOPE_LIMIT_16
unpublished on Mac OS X, according to documentation from Kodak

@mm2 When this is going ti be merged??

@mm2 When this is going to be merged??

Never, I’m afraid, unless many people argue for it. Back in 2016, Marti Maria said he wouldn’t want to merge it because

he felt Little CMS should stick to official standards and ignore Slope Limiting
he wasn’t particularly happy about the code changes involved from an architectural POV (although they did work perfectly well)
he was afraid of patent infringement claims from one of the CMM manufacturers that use Slope Limiting (maybe this was his main motive; I don’t know)

Unfortunately, I had no time left to pursue this further, so I left it at that.
Since you reference the IINA thread: Yes, mpv’s color management is broken (at least last time I had time to look) for 2 reasons:

Niklas Haas, the main author for color management in mpv, did not want colorimetrically correct color management (because he didn’t like the resulting colors), but wanted to emulate the (colorimetrically incorrect) behavior of TV sets instead (which from my POV isn’t color management at all, but only some kind of “color handling”), arguing video is produced with TV sets in mind.
mpv depends on Little CMS, but this would work for video 100% correctly only if Little CMS implemented Slope Limiting (which is why I wrote it back then in the first place).

There are several huge threads about this topic, starting in February 2014 (https://github.com/mpv-player/mpv/issues/534, https://github.com/mpv-player/mpv/issues/2815, https://github.com/mpv-player/mpv/pull/3002, https://github.com/mpv-player/mpv/issues/4248, https://github.com/mdejong/MetalBT709Decoder/issues/1), but what it all comes down to is this:
We had found a solution to reproduce QuickTime Player’s color management (which is the de facto video color management standard since video color management was introduced by Apple) exactly in mpv, but unfortunately, it was dismissed later on. ☹

colorimetrically correct color management (because he didn’t like the resulting colors), but wanted to emulate the (colorimetrically incorrect) behavior of TV sets instead

Like LG C9? You are saying that this almost reference display for HDR / Dolby Vision or even BT.2020 SDR after 3DLUT calibration (deltaE IPT is almost 1) is not something that should be desired? It also supports BT.1886 and 2.4 gamma. LG CX also already included Dolby IQ which does ambient light and illuminant correction. LG can reproduce 0.00006 nits of color, at least in Dolby Vision. (Yes, HDR limited range 66 is actually less than 0.0001 nits even in HDR10).

2. mpv depends on Little CMS, but this would work for video 100% correctly only if Little CMS

Does not that makes previous statement false? But yeah, for XYZ chromatic adaptation and 3DLUT may still be needed.

solution to reproduce QuickTime Player’s color management is de facto standard

It is no longer. We have BT.1886 now, it is not using that. As for ICC handling, well, I prefer handling on LG side now.

BTW, mpv just says BT.709 OETF should be interpreted as BT.1886. It does not apply it until it knows what display is, that is what --target-trc= is needed for. Without it it applies nothing, i.e. it assumes display is using BT.1886 for BT.709 content and sRGB for sRGB. Anyway it is not that important, difference between sRGB and BT.1886 is not THAT big. I.e. if you are actually presenting BT.709 transfer on BT.1886 LG C9 TV and sRGB display with all corrections for sRGB (mpv does with --target-trc=srgb) the difference is not that big. Indeed if you think about it the difference between presenting R'G'B' untouched on gamma 2.2 or even perfect sRGB with linear part is almost the same as presenting on the same display with correction from 2.4 gamma to 2.2. Though most display do not use perfect sRGB, they use 2.20000 gamma, but that can be calibrated too on LG C9. Sigh.

BTW, mpv just says BT.709 OETF should be interpreted as BT.1886.

Yep, and that is exactly the core of the problem. From an ICC/colorimetric POV you cannot “interpret” PCS data differently in the input and the output conversions. I.e. if the input to mpv is BT.709 (which it mostly is), the output must be BT.709, too, or else you’ll get colorimetrically incorrect data. If you combine a BT.709 (gamma ≈ 1.96) input with a BT.1886 output (gamma ≈ 2.2), you’ll get a steeper video gamma, i.e. more contrast. People used to TV sets find that pleasing, but colorimetrically, it’s wrong. From a color management POV, converting to and from the PCS must never change the colors; keeping colors the same is the whole point of color management.
Artfully combining hardware devices with different gamma curves to achieve a desired effect was something that was used in the ancient world of analog video where there was no way to digitally edit the video any way you liked, but that has no place in computer color management.
It’s a bit like studio monitors and Hi-Fi loudspeakers in the audio world; consumers don’t care about precise sound reproduction but prefer the “effect” sound of HiFi speakers; it’s the same with TV sets.
This is what we have argued about for years in the threads linked above. Apple seems still to be the only actor in the industry that gets colorimetrically exact video color management right; all the other apps, including VLC and mpv/IINA produce imagery with far too high contrast.

Anyway it is not that important, difference between sRGB and BT.1886 is not THAT big.

But the difference that distorts the imagery is the difference between BT.709 on the one hand and BT.1886/sRGB on the other. BT.1886 vs. sRGB isn’t the problem.

colorimetrically correct color management (because he didn’t like the resulting colors), but wanted to emulate the (colorimetrically incorrect) behavior of TV sets instead

Like LG C9? You are saying that this almost reference display for HDR / Dolby Vision or even BT.2020 SDR after 3DLUT calibration (deltaE IPT is almost 1) is not something that should be desired?

I don’t know the C9, but given the fact that’s it’s a TV set, it’s probably awful from a colorimetric POV.

mpv depends on Little CMS, but this would work for video 100% correctly only if Little CMS

Does not that make previous statement false?

How so? I don’t understand your point here.

QuickTime Player’s color management is de facto standard

It is no longer. We have BT.1886 now

BT.1886 is useless for ICC video color management.

As for ICC handling, well, I prefer handling on LG side now.

A TV set that performs ICC color management? 🤔
Or do you just mean color handling? In the end, it all boils down to the question whether you prefer correct or pleasing colors. 😎

you combine

That is not what happens and BT.1886 is 2.4 gamma in perfect OLED display.

keeping colors the same is the whole point of color management.

That is literally impossible since 10 bit YCbCr is required to preserved 8 bit RGB. Most YCbCr values are out-of-gamut for RGB.

but given the fact that’s it’s a TV set, it’s probably awful from a colorimetric POV.

It is a reference display. Hollywood level. It is 1 JND everywhere in HDR. Sigh.

A TV set that performs ICC color management

It does 22 point internal 3DLUT with Calman. And supports different HDMI digital formats.

you combine

That is not what happens and BT.1886 is 2.4 gamma

Whatever. It’s not 1.96 (BT.709) which it would have to be for correct color reproduction.

on perfect OLED display.

perfect OLED  is an oxymoron. OLED is a consumer technology.

keeping colors the same is the whole point of color management.

That is literally impossible since 10 bit YCbCr is required to preserve 8 bit RGB.

Of course, I meant keeping colors the same as far as possible. The nuances between 10 bit and 8 bit YCbCr are completely negligible relative to the heavy deviation produced by using a gamma of ≥ 2.2 instead of 1.96.

Also no ICC handling happens with just transfer change.

In the context of a computer, any kind of color transformation means ICC color management, or it won’t be consistent with other apps on this computer. If you’ll use your computer as a mere video player, you’ll be free to do whatever you want.

It is a reference display. Hollywood level for OLED.

But Hollywood level means consumer level. Hollywood targets its products at consumers.

It does 33 point internal 3DLUT done by Calman with HDR handling of BT.2020 and other stuff. For SDR, HDR and Dolby Vision. And supports different HDMI digital formats. It is literally the best technology possible inside. Calibration is done accounting for SPD (it is known), that makes it 30000$ like display.

I don’t doubt the display is technically capable of producing correct colors. It most probably just doesn’t do it if it’s advertised as a TV display. TV displays reproduce colors incorrectly on purpose.
We’ve had this discussion for years. This is not the right place for it; Slope Limiting is not a video specific technology.

TV displays reproduce colors incorrectly on purpose.

Before calibration sure, like in green, standard problem due to football lovers. But it even supports 100 nits true thingy out of the box, it supports both 2.4 gamma and BT.1886 (as well as 2.2 and 1.9). No linear, alas :) LG CX even supports overriding BT.2100 transfer functions and primaries and matrix.

But Hollywood level means consumer level.

Yes, of course, compared to color scientists like me they are all idiots, even in Dolby. But LG C9 is used by color scientists, did you miss me saying spectral power destribution? Or delta E IPT? You know, did you read Fairchild's CAM or Hunt's Reproduction of color? Yeah, that level, LOL.

perfect OLED is an oxymoron.
bt.1886 requires infinite contrast, LOL. Yeah, it is oxymoron: Apple iPhone 12 OLED increases black level on little brightness, Samsung's OLED is still not having PWM free mode like Xiomi (while LG C9 is PWM free), and OLED on Apple Watch and VR while supporting 1 fps VRR rates are not really possible to do in big size. Ah, and yes, OLED is total garbage compared to QD-OLED and photoemessive QD, but that is future.

Anyway, I do not get you. I can just set BT.1886 on my LG C9 display and it will be perfect for SDR. As for ICC I can calibrate by LG C9 using SPD of the display to Delta E 2000 minimum of 0.78 and Delta E 2000 max 2.11 (I will remind you that Delta E 2000 is no). Of course 2000 is total garbage for HDR, and here comes Delta E IPT.

Is that your opinion that ICC change from for example BT.2020 to BT.709 or SMPTE C to BT.709 must happen with (as it must happen in linear domain, see https://www.itu.int/rec/R-REC-BT.2087/en) transfer function of OETF and only then change to 2.4 EOTF should happen (which is just multiply 2.4/1.9 = 1.22)? Or is it your opinion that connection space must be done with 2.4 gamma and only then ICC is applied?
Obviously that does not apply to PQ, where PQ inverse is just inverse of PQ.
As for icc profiles see https://github.com/saucecontrol/Compact-ICC-Profiles/issues/3
Anyway, how in your opinion dim surround compensation should happen? Because BT.1886 is on LCD display is almost gamma 2.2. But now on my OLED, BT.1886 is 2.4.

Anyway, how in your opinion dim surround compensation should happen? Because BT.1886 is on LCD display is almost gamma 2.2. But now on my OLED, BT.1886 is 2.4.

The different behavior of your two displays is a good example of what ICC color management is all about: abstraction from hardware. From an ICC POV, there is no “BT.1886” display. There are only displays with corresponding color profiles which take care that the displays (within their physical limits) reproduce the Lab/XYZ colors from the PCS (profile connection space) colorimetrically correct. So you can exchange all kinds of displays with vastly different physical behavior with no change at all in color reproduction. The physical gamma of the display does not matter at all, because the corresponding ICC profile compensates for it.
This is vastly different from the video world that (contrary to digital imaging) already existed long before the computer age. Back then, to achieve a desired image manipulation, people had to „creatively combine“ physical devices with different physical characteristics. E.g. using the BT.709 signal of a camera (gamma ≈1.96) with a BT.1886 display (gamma ≈2.4) produced a desired contrast enhancement, but from an ICC POV it is simply wrong (because color must not change in the processing chain). This seems to be a source of endless confusion for people who are coming from the video world to ICC color management.
The main point of ICC color management is interoperability/exchangeability. Different displays with different physical characteristics must not change the color reproduction. Neither must different software. So if you make a screenshot of a video in a video application with an OS provided utility, save it as a still image and open it in an image editor, the image editor must show the exact same colors that the video application shows. This is only possible if the video application does not use its own, isolated mechanism to generate the display data, but uses the same, system-wide ICC display profile as every other application on the computer.
Now, the emotional issue in this context is that regular ICC display profiles typically do not provide for dim surround compensation because they assume bright surroundings during usage. For people used to TV sets, this makes the contrast too low although colorimetrically, it is correct. But the only place in ICC color management where a dim surround compensation could take place architectonically would be in a special ICC display profile that uses a color appearance model for dim surroundings adjustment. This way, all applications would be affected by the color appearance model adjustment in the same way and thereby would remain consistent in color reproduction with each other.

ICC display profiles typically do not provide for dim surround compensation

Yeah, it is also my opinion that BT.1886 should be applied on display's 3DLUT. After all that is what is needed to color managed BT.2020 container to DCI-D65 and unwrapping PQ transfer to whatever subpixels there are! But YOU DID not answer my question. What linear light should ICC be applied onto? Camera 1.96 or display 2.4?

What linear light should ICC be applied onto? Camera 1.96 or display 2.4?

Camera 1.96. That’s the source data. Whether a color appearance correction in the display output is required or not depends on the viewing conditions and is not know in advance, so it must not be taken into account during image processing.

What linear light should ICC be applied onto? Camera 1.96 or display 2.4?

Camera 1.96. That’s the source data. Whether a color appearance correction in the display output is required or not depends on the viewing conditions and is not know in advance, so it must not be taken into account during image processing.

I think it should be 'Camera 1.0'  I believethe camera should be treated as linear, going into the first transform.  At least, that's what I do for camera profiles I create...

I think it should be 'Camera 1.0' I believe the camera should be treated as linear, going into the first transform. At least, that's what I do for camera profiles I create...

Just to avoid misunderstandings: What do you refer to with camera profiles and first transform? ICC profiles and the transform from the camera data into the PCS (XYZ or Lab), i.e. the OETF?
If so, XYZ and Lab are both linear, so you must take the 1.96 gamma of a camera with BT.709 output into account.

I think it should be 'Camera 1.0' I believe the camera should be treated as linear, going into the first transform. At least, that's what I do for camera profiles I create...

Just to avoid misunderstandings: What do you refer to with camera profiles and first transform? ICC profiles and the transform from the camera data into the PCS (XYZ or Lab), i.e. the OETF?
If so, XYZ and Lab are both linear, so you must take the 1.96 gamma of a camera with BT.709 output into account.

I wrote a raw processor, and the cameras I work with deliver raw data largely in its original scene-linear relationship.  In order to get this data into the ICC workflow, it needs an associated camera profile with a "neutral" tone curve.  So, the first transform in my software is camera -> XYZ -> whatever, where XYZ is the PCS and 'whatever' is the destination space, ProPhoto, sRGB, etc.  Now, in my software this can be in a distinct 'colorspace' tool stuck in the processing tool chain, but if there is none, it is done at output to display or an image file.
If I were to make the camera profile anything other than linear, then the first part of the transform would do something to the raw data not representative of its true starting state, and the second part of the transform, say, to gamma 2.2 sRGB, would not have its intended effect.
This way of thinking may not line up with others, but I get decent renders from it...

should be treated as linear

How are you going to do linear algebra on nonlinear data? Back then when icc was created there was no even such thing as nonlinear algebra to try and solve such a pronlem with matrices!

should be treated as linear

How are you going to do linear algebra on nonlinear data? Back then when icc was created there was no even such thing as nonlinear algebra to try and solve such a pronlem with matrices!

Well, I let LIttleCMS and cmsDoTransform() do the transform.  It could just be flipping a coin, pixel-by-pixel, for all I care.  I just didn't get good results until I started assigning linear camera profiles to raw data prior to that initial transform.

I just didn't get good results until I started assigning linear camera profiles to raw data prior to that initial transform.

Well, maybe the camera raw data is linear (as opposed to its .mp4/whatever output in BT.709)? I don’t know.

There is still a merge conflict, you reopening did not help.

camera raw data is linear

It may be but it's a very rare thing. Full stop. Just like XYZ by default uses gamma 2.6, instead of being linear. Anyway, I dunno why we are arguing. sRGB profile on windows and photoshop uses perfect non-linear segment etc, encoded in 1DLUT. Same about Display P3 (supported v4 profile and higher only) that encodes sRGB transfer using parametric curve encoding of 3rd type per component ("para" number 3) of gamma = 2.399994 (just 2.4 actually but no perfect round), a = 0.947861, b = 0.052139, c = 0.077393, d = 0.040451. They are the same, see: https://cielab.xyz/forum/download/file.php?id=1231&sid=fbb6a58b0dd75096d198c144a98d0b4e
As for BT.1886... I suppose if ICC profile has 2.4 gamma per R', G', B' then okay (as it does on profiles above in https://github.com/saucecontrol/Compact-ICC-Profiles/issues/3), use perfect 2.4, but normal ICC profiles have 1.96 gamma but with linear segment. That MUST be encoded as "para" g = 1 / 0.45, a, b, c, d = 0.018054 from the BT.709 instead of being just 1.96 bTRC, gTRC, rTRC.
mp4 (or same, mov) files can after all have icc profiles inside.

There is still a merge conflict, you reopening did not help.

It wasn’t supposed to do that; I closed by accident and therefore immediately reopened.

normal ICC profiles have 1.96 gamma but with linear segment. That MUST be encoded as "para" g = 1 / 0.45, a, b, c, d = 0.018054 (did not look what a, b, c should be) from the BT.709 instead of being just 1.96 bTRC, gTRC, rTRC.

Theoretically, yes. But funnily, endless trial & error to reproduce the color behavior of QuickTime Player exactly showed that Apple uses 1.96, not the BT.709 curve. 1.96 (with slope limit) reproduces the behavior of QuickTime Player and Final Cut Pro perfectly. Using BT.709 instead already changes the colors noticeably. So to get consistent colors on macOS , you’d need 1.96.

showed that Apple uses 1.96, not the BT.709 curve

That will mean that some black colors are not visable at all. Again, is not slope limit meant to do the same thing as linear segment does?

get consistent colors on macOS , you’d need 1.96.

I dunno. Fast googling showed on Saturday that it will use 2.4 gamma. Again, we cannot appear to find the consensus here. I am not loading into MacOS on my macbook to check. I only use Windows 10 there and update firmware from MacOS. See after comment 16 https://forum.videohelp.com/threads/401178-PotPlayer-doesn-t-show-correct-colors-changing-Color-Space-does-not-help#post2614762

showed that Apple uses 1.96, not the BT.709 curve

That will mean that some black colors are not visable at all.

They are, because Apple uses slope limiting.

Again, is not slope limit meant to do the same thing as linear segment does?

Yes. And both approaches work in that regard, it’s just that the results are not identical.

get consistent colors on macOS , you’d need 1.96.

I dunno.

But I do. We spent a huge amount of effort to reverse engineer what Apple does, and it’s 100% certain that Apple does it this way. (Which doesn’t mean you have to accept that, of course. But for color management to be consistent on macOS, you’d have to do it  this way.) It’s all documented in https://github.com/mpv-player/mpv/issues/534, but this thread is far too long to be readable.

Fast googling showed on Saturday that it will use 2.4 gamma.

Then googling was maybe too fast. 😉
Apple “officially” describes why it uses 1.96 in https://developer.apple.com/library/archive/technotes/tn2257/_index.html. Personally, I feel that this is just a handy rationalization. To get ICC color management consistent, they knew they’d have to use the BT.709 curve, but handling complex curves on iPhones of that time (2013) was too computationally expensive, so they preferred to replace the complex curve by the gamma equivalent 1.961. But to make that decision tolerable for video people, they came up with the justification provided in that document which has a completely different line of argumentation, but “by chance” ends up with gamma 1.961.

And both approaches work in that regard, it’s just that the results are not identical

Again, are you sure they are different? Did you consider that the linear part of BT.709 is different from sRGB linear part?? Tjat is what Apple is supposed to do: convert BT.709 linear segment to sRGB used in Display P3 while preserving the different
P.S. I think you should do "para" encoding of sRGB (I gave it) and "para" encoding of BT.709 (do it yourself) and then try Little-CMS to convert between the too.

Then googling was maybe too fast.

It was completly unrelated and was about whether 2.4 gamma is applied on Macbooks. It is. That is just the fact. Whether ICC done on 1.961 linear stuff, okay, it is applied there, since that is what is done in ICC profile rTRC, gTRC, bTRC. And also you do not consider TrueTone here and varia lility of BT.1886 depending on LCD/OLED! 2.4 gamma is only on OLED. I also do not get it whether black point of BT.709 should be the same as on PQ, or should black level be at 0.1 nits! Or should it not be at 0.1 nits, since that is not display referred. I think the last is correct and thus BT.709 black should be presented using 0.0001 nits PQ.

BTW, that was a wrong .xls, the correct one where 1DLUT is compared with para encoding of sRGB is here:  https://cielab.xyz/forum/download/file.php?id=1234

And both approaches work in that regard, it’s just that the results are not identical

Again, are you sure they are different?

Yes. They are clearly distinguishable visually.

It was completly unrelated and was about whether 2.4 gamma is applied on Macbooks. It is.

What do you refer to with this? To the default ICC display profile on MacBooks? That might well be model specific.

And also you do not consider TrueTone here

TrueTone did not exist when we made these tests and I highly doubt that TrueTone is usable in connection with ICC color management, but I have not been able to test this so far, since I do not have a TrueTone capable Mac.

and variability of BT.1886 depending on LCD/OLED! 2.4 gamma is only on OLED, which is not ised on Macbooks.

? The whole point of ICC display profiles is to abstract from the hardware, so OLED or not should not make any difference at all.

I also do not get it whether black point of BT.709 should be the same as on PQ

? BT.709 has no black point, only display profiles have.

This is for BT.709 (strange d, but whatever):
Data_Type: para
Type: 3
Count: 5
g 2.222244
a 0.909912
b 0.090088
c 0.222229
d 0.081009

This is for BT.709 (strange d, but whatever):

Um, yes, but what’s your point?

But funnily, endless trial & error to reproduce the color behavior of QuickTime Player exactly showed that Apple uses 1.96, not the BT.709 curve

But that does not matter much or at all. Only compression of pure 1/2.2 or pure 2.35/1.2 ~= 0.51 will remove a lot of near black information, thus linear part is needed. With going back to linear that does not happen much. I hope you are not saying windows or MacOS ever used pure gamma for compression whether it is sRGB or BT.709, because that is BS.

What linear light should ICC be applied onto? Camera 1.96 or display 2.4?

Camera 1.96. That’s the source data

Okay, I found the citation for this. https://youtu.be/GJ6nnlO1i-Q?t=740 Unfortuanatelly the article itself is not on sci-hub. https://doi.org/10.1109%2FMCE.2017.2714696
So I agree on this. Primaries change should happen on scene light. Sigh.

don’t doubt the display is technically capable of producing correct colors. It most probably just doesn’t do it if it’s advertised as a TV display. TV displays reproduce colors incorrectly on purpose.

It is very VERY hillarious how you cannot believe that, yet someone managed to get to 0.0001 Delta E 2000 on one colour not so long ago on LG C1 in our competion. Why they are not using Delta E IPT I dunno. Delta E 2000 is complete garbage and I doubt they have reference conditions for it. At least try to combine the two.
See all best calibrations here on LG: https://www.avsforum.com/threads/colourspace-cms-next-generation-calibration-thread.3049142/post-61010636
0.2028 dE2000 average from 1000 color verification - All dE below 1)
And this for 0.0001. https://www.avsforum.com/threads/colourspace-cms-next-generation-calibration-thread.3049142/post-60913609
This is just 21^3 point cube, while one can do 33^3:

But funnily, endless trial & error to reproduce the color behavior of QuickTime Player exactly showed that Apple uses 1.96, not the BT.709 curve

But that does not matter much or at all.

It obviously does matter if you want to reproduce QuickTime’s behavior, which is the only way to stay color consistent on macOS (and for any camera with ProRes output, for that matter).

Only compression of pure 1/2.2 or pure 2.35/1.2 ~= 0.51 will remove a lot of near black information, thus linear part is needed. With going back to linear that does not happen much. I hope you are not saying windows or MacOS ever used pure gamma for compression whether it is sRGB or BT.709, because that is BS.

Yes and no. macOS uses pure gamma profiles for video (or at least did this when we performed our tests), but Apple’s ColorSync CMM always adds the linear part to the profile in the form of the slope limiting. That’s why slope limiting is so crucial.

It is very VERY hillarious how you cannot believe that, yet someone managed to get to 0.0001 Delta E 2000 on one colour not so long ago on LG C1 in our competion.

Misunderstanding. I don’t doubt that calibration can achieve good quality; I’m talking of out-of-the-box TV sets.

You know what this is nuts. If the author is not going to merge we will have to add patch/build system to mpv. I am done with this.

You know what this is nuts. If the author is not going to merge we will have to add patch/build system of Little-CMS to mpv. I am done with this.

I cannot add this PR because mainly 3 reasons:

Emulating CMMs is not and has never been the goal of this library. Actually it is worst that than since AdobeCMM no longer applies slope limit, so to do it well user should specify which version of AdobeCMM to emulate. At that point we should emulate also bugs, etc. which makes the task near impossible. And very confusing for the end user.
There are patents covering some of those cases.
We are changing the profile behaviour. This was discussed in one ICC meeting and the result was a consensus were Adobe and Apple agreed to not "hot-fix" profiles anymore. There is a specification, if the CMM does something different to the specification then it is causing interoperatibility problems.

Anyway I think there is a clean way to do what you need without all those problems. Instead opening profiles with cmsOpenProfileFromFile, create your own open function that:

Opens the profile and gets the handle
Looks the handle for matrix-shaper structure (there is a function that does that)
If so, take the shapers and modify them at your convenience. Use cmsWriteTag to write the curves in the in-memory representation of the profile.
returns the handle.

It is so easy. All is kept in memory, and then there are no problems on patents or the CMM. 100 lines or maybe less.
For absolute intent, also this was discussed at ICC level. lcms just does what spec says. Use adaptation state to get legacy absolute colorimetric.

There are patents covering some of those cases.

And so what? Why do you care? If they will sue they will lose, liitle cms is used too often. You do understand that there is no garantee other code does not violate some patent out there, both mpv and ffmpeg violate patents by the hundreds and mpv does not even do plausible deniability, "we do not look into patents", like recent implementation of Videolan's libplacebo Dolby Vision's IPTPQc2 color space and MMR reshaping. Many are black hats and vlc/mpv/ffmpeg are France D.B.A., where patent law is broken. Maybe you shouls consider it too.

AdobeCMM no longer applies slope limit

Now we are getting somehwere. What does it do then? Does it actually correctly transfer manages linear part and knee from sRGB para TRC encoding of Display P3 to BT.709? What does it do color managment on? BT.1886 EOTF data or original BT.709 linear data? Scene referred is the correct ANSWER. Does it account for not perfect black so that BT.1886 is not 2.4 gamma but more like 2.2 on LCD? You know it would be nice to get reverse of True Tone (because for 10 lux of D65 ambient 2.4 may be correct but for 200 nits ambient 2.2 gamma and 200 nits are more correct, while for cinema 2.6 gamma requires 48 nits, and 108 nits of Dolby Cinema is already HDR), Dolby Vision IQ and HDR10+ adaptive as technology that chromatically adapats to ambient light. We in mpv use it too but it is macos only!

Apple agreed to not "hot-fix" profiles anymore.

Hahahaha, what a joke. Display P3 profile from Apple copyright 2015 or 2017 is incorrect: it uses negative Z for red colorant (caused bugs in Mozilla and our Chrome) after D50 PCS managing and uses incorrect chad and uses incorrect white point that is not D50 adapted so not D50, because D65 adapted to D50 is D50 after all! And yet we in Chrome fixed it: we use for HDR WCG using wsRGB, okay? It works then, even BT.2020 works!

absolute intent, also this was discussed at ICC level. lcms just does what spec says. Use adaptation state to get legacy absolute colorimetric.

Hey we do not need ICC, we need DCI for movies. That is completly different and described by ITU docs.

At that point we should emulate also bugs, etc. which makes the task near impossible

Slope limit is not a bug. That is non-ICC video variant for color managment. What bugs are you talking about? Maybe a bug that photoshop is 15 bits internally not 16 bits for 16 bit PNG and GIMP can do it correctly? Or maybe the fact its Simple sRGB uses not para encoding but just 2.2 gamma, which is unacceptable for OETF, but works for EOTF just fine? What? Or remobal of PCD files that used xvYCC trabsfer and different quantisation? Or never implemeneted NLQ as part of Dolby Vision but was available long time ago? What?

ICC meeting

Internatinal Color C. should use a little more time instead of doing their funny presentations on 8 color printing and iccMAX or some other such hillarious stuff to actually help Chrome and Android to get to MacOS and iOS level of automatic color managment! We are not able to do A2B and B2A profiles for 3 years now.

We are changing the profile behaviour. This was discussed in one ICC meeting and the result was a consensus were Adobe and Apple agreed to not "hot-fix" profiles anymore.

Approximately when did this meeting take place? (Meaning, when can we expect to see the new behavior in Apple’s and Adobe’s products?)

So why not just adapt the profiles in the way I described? You could just implement "openProfileForMovies" and everything will work as you wish. Note this would just return a "fixed" cmsHPROFILE handle, not to touch anything of the profile in disk.
I really don't want to enter in this kind of discussions about what is best or not for a given system, the CMM is just a tool to do blindly what profile says. If profile is wrong for any reason, the root cause and the thing to fix is the profile, not the CMM.
Regarding you complains about patents and the ICC, I could share same opinion but this is not the adequate place at all. I am no longer in the ICC and don't hold any software patent  :smiley:

If profile is wrong for any reason, the root cause and the thing to fix is the profile, not the CMM.

Apple did not not do it in 7 years since 2015 Display P3 profile. There is no profile in movies. It uses H.273 code points.

Approximately when did this meeting take place? (Meaning, when can we expect to see the new behavior in Apple’s and Adobe’s products?)

In 2013 or so. I wonder why they didn't... or maybe they did but only on V4 profiles?

maybe they did but only on V4 profiles?

What? No v5, iccMAX? Oh. Anyway, of course it is v4! Did you even read the spec? Parametric curve encoding (para) of TRC is ONLY supported since v4. At least that apple got right.

In 2013 or so. I wonder why they didn't... or maybe they did but only on V4 profiles?

In this case I don’t think we can afford to wait till they do it.
It’s not an exotic niche issue. It’s about watching videos with correct color.

So can we finally say whether you are supposed to color manage on scene linear light? I.e. you use BT.709 transfer to linearise then apply color change then delinearise again using bt.709 and only then linearise using bt.1886, lets say 2.4 gamma?

So can we finally say whether you are supposed to color manage on scene linear light? I.e. you use BT.709 transfer to linearise then apply color change then delinearise again using bt.709

I’m not sure whom you asked, but I would say yes.

and only then linearise using bt.1886, lets say 2.4 gamma?

If you’ll use bt.1886 or something else in the last step depends solely on your display and your viewing conditions.

depends solely on your display and your viewing conditions.

Yes, but MacOS' display is display-p3, i.e is using P3-D65 with sRGB curve. So BT.1886 is done on GPU. You are not serious right now?

Yes, but MacOS' display is display-p3

Not necessarily. It might be anything you set as display profile.

So BT.1886 is done on GPU.

What do you mean by “done on GPU”? The tone response curves stored on the graphics card? These are always stored on the graphics card, and they correspond the display profile the user selects. If the user select BT.1886, it’s BT.1886, if the user selects P3 it’s P3 and BT.1886 comes nowhere into play.
You are not serious right now?


ITE drivers/sensor: add tachometer driver for it8xxx2_evb

Add tachometer driver for it8xxx2_evb.
Signed-off-by: Ruibin Chang<EMAIL_ADDRESS>

My comments on this PR are addressed.
I am curious about one last thing, though:
			reg = <0x00f01820 1   /* F2TLRR */
			       0x00f01821 1   /* F2TMRR */
			       0x00f01848 1>; /* TSWCTLR */

Why 1 for the size? That's kind of weird value. Is the register block really 1 byte long?

Our prescaler, PWM and tachometer module register are mess-up in 0xf01800~0xf018ff without any rules, so I list the register one by one for tachometer node.

About this error: MAINTAINERS.yml: glob pattern 'drivers / * / * it8xxx2 *' in 'files' in area 'ITE Platforms' matches a directory, but has no trailing '/'
Why does the checker always check the original directory 'drivers / * / * it8xxx2 *' instead of added path 'drivers/ * / * / * it8xxx2 *' ?

Could we merge this PR? The PR https://github.com/zephyrproject-rtos/zephyr/pull/40274 needs the EC_FREQ common definition. Or need I do the changes for Compliance Checks / Check MAINTAINERS file?

The PR #40274 needs the EC_FREQ common definition.

It seems like that PR depended on this one, but they were not uploaded together. Please revert that PR until this one lands.

Ack


SOAP-ERROR: Parsing WSDL

Hi,
I get this error after call any method:
 SOAP-ERROR: Parsing WSDL: Couldn't load from '/home/wiiw4sdu6lut/public_html/vendor/octw/aramex/src/Helpers/../../wsdls/test/shipping.xml' : failed to load external entity "/home/wiiw4sdu6lut/public_html/vendor/octw/aramex/src/Helpers/../../wsdls/test/shipping.xml"
i checked the SOAP extension and it's enabled in my server

Hi,
Which version are you using?
also please check the path  public_html/vendor/octw/aramex/wsdls/test/, does this path includes the WSDLs ?

this version: "octw/aramex": "^1.2",
no, the WSDLs is not includes in the path
see image

i changed the permissions to all folders and files inside folder SDK
Also i checked the (allow_url_fopen) in cPanel and it is ON

I also upload my project to another server , and test it also with local server , same error come

That's weird, I tried the same PHP version and package version and it worked, it seems like you are using a hosting service, maybe the path that in PHP is not the real path in the server or something, if you have an SSH (terminal) access, you could check the path that's showing in the error if it exists or not, simply run
ls /home/wiiw4sdu6lut/public_html/vendor/octw/aramex/src/Helpers/../../wsdls/test/shipping.xml
and see if its exists.

I downgrade the sdk to : "octw/aramex": "1.2",
and it's look like now working
i will make some test on functions , i hope i did not face an errors.
thanks

this version: "octw/aramex": "^1.2",
yes, the WSDLs is includes in the path see image

isn't it the same version ?

Okay Good luck, do not hesitate to open this issue again.

no, i removed (^) sign


_enrichChatCard assumes message-sender exists

As an example, my module Change Log has an option to remove the message-sender from the chat message using Foundry's renderChatMessage hook. This is for the purpose of reducing the chat card when the sender info isn't important.

However, dnd5e 3.0.0's _enrichChatCard subsequently assumes the content of the chat message, specifically that message-sender exists.
It's possible that other modules would wish to modify the chat message using renderChatMessage rather than dnd5e's own hook where the module is intended to be system-agonistic, therefore I'd request that the system handles for missing content.

@Larkinabout  A fix for this has been merged, but you might want to check out the new dnd5e.chatMessage hook which is called after the system's changes have been made, so you can modify the messages without issue.

Many thanks. Yeah, noticed the hook, however because the module doesn't just support the dnd5e system I figured it was much simpler this way than writing code specifically for a different hook just for dnd5e's handling. At least for this particular issue. Thanks again.


NSD without VNFDs results in confusing error

I had forgot to add the VNFD-Ids into the NSD before I uploaded it. The result was an error: No VNFManagers were found. Error code: 404
Because I used the wrong file and the message hasn't anything to do with the actually error, I searched at the wrong place and troubleshooted in NSDUtils.java. After I added some trace infos I found the error of the missing IDs. My suggestion is to validate if VNFDs exist in the NSD.
Would be core/core-impl/src/main/java/org/openbaton/nfvo/core/api/NetworkServiceDescriptorManagement.java during onboard/update method the right place to do such a validation? Then I can create a pull request.

Hi @szengerle, I can confirm the issue, however, it is only happening when you pass an empty VNFD json object. If you pass:

 "vnfd": [ ], seems to be handled correctly with an error message
 "vnfd": [{}], seems to be the issue you are referring to. I think such check should also be added, so please go ahead with pull request.

Thx

I mean "vnfd": [ ] and it was already done in the latest develop HEAD. "vnfd": [{}] throw also exception. So, nothing todo.


[XamarinInspector-MAC]: Accessibility: Keyboard: MAS2.4.7: The keyboard focus is traversing the outer-boundary of feedback window, but the keyboard focus on that window is not visible, which lead to focus loss for the feedback window in the Xamarin Inspector Application.

Steps to Reproduce
Pre-requisites:
Launch the Visual Studio for Mac and Sign-in with Enterprise account.
Create projects:

Go to Visual Studio-> File-> New Solution. -> Multiplatform-> App-> Xamarin.Forms-> Blank Forms App.
Hit on Next button to create the project.
Hit on Debug(Play)/Build button to build/deploy the solution/project.
As per the choice/requirements, Change the Device platform like iOS/ Android and iPhone X iOS 11.3 etc.
Hit on Inspector icon button (i.e., in the top toolbar buttons of the VS) to inspect the project.
On hitting on inspector button, Xamarin Inspector is Launched.

Repro-Steps:

Follow the Pre-requisites to Launch the Xamarin Inspector from Visual Studio.
Navigate to Xamarin Inspector-> preferences->Hit On Enter key, which opens the General tab by default.
Navigate to Feedback tab-> Hit on Enter to open Feedback tab window.
Press on the Tab key to traverse all the interactive elements of this opened feedback tab.
Observe the keyboard focus next to Feedback tab item.

Expected Behavior
The keyboard focus is traversing the outer-boundary of the feedback window, so keyboard focus should be visible on this window, otherwise it would be also better if keyboard traversing is removed from outer boundary.
Actual Behavior
The keyboard focus is traversing the outer-boundary of feedback window, but that keyboard focus on that window is not visible, which lead to focus loss for the feedback window.
User Impact
The keyboard user might be confused due to apparent focus loss.

Environment
Visual Studio for Mac Enterprise [Version: 7.5 Preview (7.5 build 1222)]
Xamarin Inspector [Version: 1.4 (master/b3f92f9)]
Log File

Please add the following labels to the bug:
A11yMAS
Accessibility
Xamarin-Inspector-MAC
Wipro
MAS2.4.7

Exemption Approved - 1830


[FLINK-11618][state] Refactor operator state repartition mechanism

What is the purpose of the change
There existed two problems during state assignment when parallelism not changed:

If we only have even-split redistributed state, current implementation actually cannot ensure state assignment to keep as the same as previously. This is because current StateAssignmentOperation#collectPartitionableStates would repartition managedOperatorStates without subtask-index information. Take an example, if we have a operator-state with parallelism as 2, and subtask-0's managed-operatorstate is empty while subtask-1 not. Although new parallelism still keeps as 2, after StateAssignmentOperation#collectPartitionableStates and state assigned, subtask-0 would be assigned the managed-operatorstate while subtask-1 got none.
We should only redistribute union state and not touch the even-split state. Redistribute even-split state would cause unexpected behavior after RestartPipelinedRegionStrategy supported to restore state.

This PR will fix the above two problems.
Brief change log

Refactor StateAssignmentOperation#collectPartitionableStates to let returned managedOperatorStates has subtask-index information.
Refactor API of OperatorStateRepartitioner and its implementation RoundRobinOperatorStateRepartitioner. The logical of comparing old and new parallelism is now located in OperatorStateRepartitioner#repartitionState.
Refactor AbstractStreamOperatorTestHarness to extract the logic of  repartitioning operator state into a new method AbstractStreamOperatorTestHarness#repartitionOperatorState instead of previously contained in AbstractStreamOperatorTestHarness#initializeState.

Verifying this change
This change added tests and can be verified as follows:

Added StateAssignmentOperationTest to verify the logic of StateAssignmentOperation#reDistributePartitionableStates.
Existed all tests using AbstractStreamOperatorTestHarness could verify the refactor of StateAssignmentOperation generate the expected results as before.

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: yes, this could affect state assignment when restoring checkpoint
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable, this is a internal implementation, current doc should be enough.

@flinkbot approve description
@flinkbot approve consensus
@flinkbot attention @StefanRRichter

@flinkbot approve consensus

@flinkbot attention @StefanRRichter

@Myasuka Thanks for the work. Changes look good to me now, so I will merge once Travis is green.


vue-testing-librray example

Features

[ ] Add vue-testing-librray example to work with jest-preview

[x] Support file transform
[x] Supoprt import css transform
[ ] Support scope css (vue's syntax)

jest-preview supports transforming files (e.g: images) and css files out of the box
Scope CSS does not work yet. To investigate and support

Real App UI:

UI after run preview.debug():


html in strings breaks usability

First of all: I like this library. It is very clean and simple code.
But thats a major bug and preventing me from using it. A string can basically include html and this must not affect the editor.
Example code:
<json-editor id="editor"></json-editor>
<script>
  document.addEventListener('DOMContentLoaded', () => {
    document.getElementById('editor').value = '"John: Hello World!<br>Jane: Hello John!"';
  });
</script>

This will render an invalid json that then does not get updated until fixed:
"John: Hello World!
Jane: Hello John!"

Also: opening a html tag without closing it will cause a strange redraw and data after the "<" will get lost.
To overcome all of these issues it will be enough to escape the string. (That might also be necessary in keys):
format_string(input) {
  input = input.replace(/&/g, "&")
                    .replace(/</g, "<")
                    .replace(/>/g, ">")
                    .replace(/"/g, """)
                    .replace(/'/g, "'");
  return `<span part="string"><span part="string_quotes">\"</span>${input}<span part="string_quotes">\"</span></span>`;
}

sorry, double post...


DatePicker/DatetimePicker not updated when date changes

What happened?
To use the element as a controlled component I would expect it to change with the input values.
The element will receive an updated from prop and I can query the updated from property of the DatetimePicker custom element (as well as the underlying DatePicker) for example through the browser console, but the component will not be rerendered, it seems (in that sense it applies to JS only as well, I think).
My use-case at hand is textfield as alternative input mode to the date-time-picker.
https://stackblitz.com/edit/bdvzaq?file=src%2Fdatetimepicker.tsx Link for the example code in this issue
What type of frontend frameware are you seeing the problem on?
React
Which version of iX do you use?
1.6.0
Code to produce this issue.
import { IxDatetimePicker } from '@siemens/ix-react';
import { IxDatetimePickerCustomEvent } from '@siemens/ix';
import React from 'react';

const lpad = (n: number): string => `0${n}`.slice(-2);
const formatDate = (date: Date): string | undefined => {
  if (!date) return undefined;

  return [
    date.getFullYear().toString(),
    lpad(date.getMonth() + 1),
    lpad(date.getDate()),
  ].join('-');
};

const datePickerDelimiter = '|';

export default () => {
  const [value, setValue] = React.useState(new Date());

  const resetDate = () => {
    setValue(new Date());
  };

  const handleDone = (e: IxDatetimePickerCustomEvent<string>) => {
    const dateParts = e.detail.split(datePickerDelimiter);
    const datePart = dateParts[0];
    const timePart = dateParts.pop();

    if (!datePart || !timePart) {
      return;
    }

    const selectedDate = new Date(`${datePart} ${timePart}`);
    setValue(selectedDate);
  };

  return (
    <div>
      <button onClick={resetDate}>Reset date</button>
      {value.toLocaleString()}
      <IxDatetimePicker
        from={formatDate(value)}
        dateFormat="yyyy-LL-dd"
        range={false}
        eventDelimiter={datePickerDelimiter}
        onDone={handleDone}
      />
    </div>
  );
};

We are currently re-implementing the date and time picker components (#737 ).
The new components will have the desired behavior.


Types: normalize price type between iOS and Android

Version of react-native-iap
3.4.4
Version of react-native
0.60.0
Platforms you faced the error (IOS or Android or both?)
Android and IOS
Expected behavior
type of price should be the same on iOS and Android: a string OR a number. Preferably a number, because it is a number.
Actual behavior
Android: The type of price is a number (see screenshot)
iOS: The type of price is a string (see screenshot)
https://github.com/dooboolab/react-native-iap/blob/master/index.d.ts#L10
Tested environment (Emulator? Real Device?)
real device
Steps to reproduce the behavior
Run RNIap.getSubscriptions()
Android:

iOS:

To help prevent this in the future, maybe it's a good idea to add mocks to this project. So types are validated against mocks when you run tsc before releasing a new version of this package. Also makes it easier to write unit tests, which this project does not have but which i would recommend to be created
I found out about this when creating mocks myself:
const test: RNIap.Subscription<string>[] = [
  {
    currency: 'EUR',
    description: 'Monthly plus subscription',
    freeTrialPeriodAndroid: 'P3D',
    iconUrl: '',
    introductoryPrice: '',
    introductoryPriceCyclesAndroid: '',
    introductoryPricePeriodAndroid: '',
    localizedPrice: '€9.99',
    originalJson: '[REDACTED]',
    originalPrice: 9.989999771118164,
    price: 9.989999771118164,
    productId: '[REDACTED]',
    subscriptionPeriodAndroid: 'P1M',
    title: '[REDACTED]',
    type: 'subs',
  }

price gives an error on my mock.

+1
Additionally introductoryPrice should be a Number. Currently on Android and iOS it is a localized price p.ex. "0,99 €". Following the scheme of price and localizedPrice a new value localizedIntroductoryPrice should be added.

is this fixed by https://github.com/dooboolab/react-native-iap/pull/885 ?

@voxspox I have not tried the latest updates, but according to that PR the price is now also a string on Android?
That seems to fix the differences yes.
Preferably you want that to be a number to be honest. But this will do, as it fixes the inconsistency.


Fix 16k file bucket

@msbarry
currently archives less than 16K don't work with file buckets (maybe same for HTTP depending on server)
The initial IO is for 16384 bytes to save roundtrips over the network. This is a useful optimization, and it doesn't seem worth special-casing non-network archives to do something different (do one IO for a few bytes to then get the exact length...)
However doing a ReadAt for 16384 bytes will read the entire archive and then raise an EOF error. This PR special cases range requests at offset 0 to allow shorter responses. I don't love this because it adds hidden hardcoded behavior based on offset=0.
Alternative: add another boolean parameter to NewRangeReaderEtag that's like allowShortResponse bool to make this behavior explicit. Thoughts?

It looks like HTTP/gocloud buckets don't care if your byte range request goes past the end of the file? To match that behavior, maybe we could just remove the && offset == 0 check?
Also make sure you update mock bucket, and you can remove the extra logic I added to fakeArchive to pad if <16kb.

To match that behavior, maybe we could just remove the && offset == 0 check?

It should be OK for files, however on HTTP we need to special-case it - right now it's caught by isRefreshRequiredCode
If we are treating ETags correctly and the server correctly implements conditional requests we should never see a 416, only 412s when etags are actually expired. The only case where we see a 416 is the <16kb case, and we don't even get the N successfully read bytes. So our HTTP bucket should probably detect 416 and retry. A bit ugly...

Huh, I didn't think it was an etag thing, I meant that HTTP server range requests return the overlap of the requested range and the actual data range. I've tried on a few different HTTP servers and when you request from within the file past the end of it, it always returns a 206. 416 is only when the start of the range is > the file length. Are you saying that caddy returns that error when backed by an HTTP bucket or file bucket?
The 416 error code spec indicates that it should only be thrown when none of the ranges "overlap the current extent"

@msbarry ok, updated


Domain Controller Requirements Conflicting with other documentation

This article indicates Cloud Kerberos Trust does not have a Windows Server version requirement for domain controllers, while other documentation located:
https://learn.microsoft.com/en-us/windows/security/identity-protection/hello-for-business/hello-hybrid-cloud-kerberos-trust?tabs=intune#prerequisites
and
https://learn.microsoft.com/en-us/windows/security/identity-protection/hello-for-business/hello-how-it-works-authentication#hybrid-azure-ad-join-authentication-using-azure-ad-kerberos-cloud-kerberos-trust
seem to indicate a DC running Windows Server 2016 or newer is required.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 87e5f5f1-16cf-57e2-bdfc-b090d90437b1
Version Independent ID: 1662c47f-12cb-147d-25f0-dee98b6c7722
Content: Windows Hello for Business Deployment Prerequisite Overview
Content Source: windows/security/identity-protection/hello-for-business/hello-identity-verification.md
Product: windows-client
Technology: itpro-security
GitHub Login: @paolomatarazzo
Microsoft Alias: paoloma

This is in reference to https://learn.microsoft.com/en-us/windows/security/identity-protection/hello-for-business/hello-identity-verification

Hello @ceasley112 and thank you for the feedback. The link you provided has in the header the following "applies to:"

and the table has recently been updated with the following:

This is to avoid maintaining the table when an OS falls out of support. Hopefully this clarifies.


tweak: Pre-Fare takeover alert layout

Asana task: Pre-Fare Alerts: Update takeover frontend
Overall, there aren't a ton of changes. Most notable are card bg color, footer, and icons.

[ ] Tests added?

Seems odd that backend unit tests are failing when pretty much all the changes are cosmetic 🤔

Seems odd that backend unit tests are failing when pretty much all the changes are cosmetic 🤔

It's because of the branch that this PR is based on. That branch has failing tests because I put the tests in their own branch. So until the test PR is merged, CI will fail here and in #1785.


fix(timezone): mismatch in date from photo in system vs date returned…

Issue with date formatting where timezone was being set and returning the incorrect date from the library i.e Mon Jan 17 21:12:50 2022 would be transformed into 2022-01-18T02:12:50.470+0000 (January 18th) effectively returning the wrong date from the library. I conclude, that we should leave any timezone transformation to the consumer as there are times where the consuming application needs the date with timezone data.
The library will now return with timezone data in the string i.e. 2022-01-17T21:12:50.470-0500 (January 17th)

:tada: This PR is included in version 4.7.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[mysql] expose Enumerator metrics via Source Event

I opened a PR #707 last week, which hope to expose some
Enumerator metrics directly to SplitEnumeratorContext.metricGroup(),
but unfortunately, it return null for the MetricGroup. After
some investigation of FLIP-27, it says The SourceCoordinators will run in the JobMaster, but not as part of the ExecutionGraph.
So there is noway to expose the Enumerator metrics ;(
In this PR, I use the RPC Gateway, a.k.a SourceEvent to transfer
the Enumerator metrics to each SourceReader.
I basicly added 5 metrics:

alreadyProcessedTableCount  // Already processed table count for this flink job.
remainingTableCount	// Remaining table count for this flink job to handle.
finishedSplitCount	// Processed splits count for this flink job.
assignedSplitCount	// Assigned but not finished splits count for this flink job.
remainingSplitCount	// Remaining split count for the currently processing table.

For now I just use the FinishedSnapshotSplitsAckEvent to
carry the above metrics, we may alternatively send a
request event to query the metrics in MySqlSourceReader#start
and MySqlSourceReader#onSplitFinished, that might need
some future discussion.
Signed-off-by: 元组<EMAIL_ADDRESS>

Hi @zhjwpku, sorry for the long delay of this PR. Could you please help rebase it with latest master branch before we can merge this? A complete refactor had been made since your original commit, from com.alibaba.ververica.cdc.connectors.mysql.source to org.apache.flink.cdc.connectors.mysql.source.
Thanks again for your generous contribution!

Hi @zhjwpku, sorry for the long delay of this PR. Could you please help rebase it with latest master branch before we can merge this? A complete refactor had been made since your original commit, from com.alibaba.ververica.cdc.connectors.mysql.source to org.apache.flink.cdc.connectors.mysql.source.
Thanks again for your generous contribution!

Hi @yuxiqian , I have already forgot what this PR is about, feel free to take it if you think this is a valuable feature ;)

I will close this PR for now, if anyone think this is a valuable feature, feel free to take it.