text:
Bug: Cannot read properties of undefined (reading 'includes')

Describe The Bug
Plugin cannot read lock status. Battery status and other information apears correct. The plugin reports lock model BETA211123 instead of Yale Assure Lock 2
To Reproduce
Yale Assure Lock 2 with door open/closed contact sensor installed and calibrated. Connected and controlled by HomeKit via Bluetooth
Expected behavior
I am trying to access the locks open/closed contact sensor via HomeKit by using Homebridge. The locked/unlocked status works natively through HomeKit
Relevant log output
The plugin is able to read some information about the lock such as battery status, PIN, home and owner information, but it always reports in the log file "LockStatus":{"status":"unknown"}.

[28/07/2024, 14:52:53] [August] [DEBUG] Lock: Front Door (refreshStatus) lockDetails: {"LockName":"Front Door","Type":15,"Created":"2024-05-29T20:36:48.972Z","Updated":"2024-05-29T20:36:48.972Z","LockID":"123","HouseID":"example","HouseName":"Our House","Calibrated":false,"timeZone":"America/New_York","battery":0.5791801094437687,"batteryInfo":{"level":0.5791801094437687,"warningState":"lock_state_battery_warning_none","infoUpdatedDate":"2024-06-27T00:44:29.413Z","lastChangeDate":"2024-05-29T20:36:48.972Z","lastChangeVoltage":6200,"deathDate":"2025-05-24T20:36:48.972Z"},"supportsEntryCodes":true,"remoteOperateSecret":"example","skuNumber":"BETA211123","macAddress":"98:1B:B5:6A:DD:48","SerialNumber":"LFI7Z002Z6","LockStatus":{"status":"unknown"},"currentFirmwareVersion":"1.3.20","homeKitEnabled":true,"zWaveEnabled":false,"isGalileo":false,"OfflineKeys":{"created":[],"loaded":[{"created":"2024-05-29T20:36:48.992Z","key":"example","slot":2,"UserID":"example","loaded":"2024-05-29T20:37:30.329Z"}],"deleted":[],"loadedhk":[{"key":"example","slot":257,"UserID":"example","created":"2024-05-29T20:36:48.994Z","loaded":"2024-05-29T20:37:30.620Z"}]},"parametersToSet":{},"users":{"87c09b26-f89c-4337-804c-3e4fffbf3109":{"UserType":"superuser","FirstName":"Brad","LastName":"example","identifiers":["phone:+123","email:example@example.com"]}},"pubsubChannel":"69e6a107-f645-40eb-868c-be24383a9aa9","ruleHash":{},"cameras":[],"geofenceLimits":{"ios":{"debounceInterval":90,"gpsAccuracyMultiplier":2.5,"maximumGeofence":5000,"minimumGeofence":100,"minGPSAccuracyRequired":80}},"accessSchedulesAllowed":false,"pins":{"created":[],"loaded":[{"_id":"example","type":"pin","lockID":"example","userID":"87c09b26-f89c-4337-804c-3e4fffbf3109","state":"loaded","pin":"example","slot":1,"accessType":"always","callingUserID":"87c09b26-f89c-4337-804c-3e4fffbf3109","createdAt":"2024-05-29T20:39:29.461Z","updatedAt":"2024-05-29T20:39:30.312Z","loadedDate":"2024-05-29T20:39:30.312Z","firstName":"Brad","lastName":"example","unverified":false}],"disabled":[],"disabling":[],"enabling":[],"deleting":[],"updating":[]},"lockId":"example"}
[28/07/2024, 14:52:53] [August] Lock: Front Door parseStatus
[28/07/2024, 14:52:53] [August] Lock: Front Door Unknown statusCode: Cannot read properties of undefined (reading 'includes'), Submit Bugs Here: https://tinyurl.com/AugustYaleBug
[28/07/2024, 14:52:53] [August] [DEBUG] Lock: Front Door failed (refreshStatus) lockDetails, Error: TypeError: Cannot read properties of undefined (reading 'includes')
[28/07/2024, 14:52:53] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'includes')

Config for homebridge-august
{
    "bridge": {
        "name": "Homebridge 5C6E",
        "username": "0E:B7:11:FD:5B:6D",
        "port": 51636,
        "pin": "123",
        "advertiser": "avahi",
        "bind": [
            "eth0"
        ]
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "auth": "form",
            "theme": "auto",
            "tempUnits": "f",
            "lang": "auto",
            "debug": false,
            "platform": "config"
        },
        {
            "controllers": [
                {
                    "address": "192.168.1.1",
                    "username": "homebridge",
                    "password": "HomeBridgeProtect1"
                }
            ],
            "name": "UniFi Protect",
            "platform": "UniFi Protect",
            "options": [
                "Enable.Video.Transcode.Hardware.D8B3707466A3",
                "Enable.Doorbell.Trigger.D8B3707466A3",
                "Enable.Device.SyncName.D8B3707466A3"
            ]
        },
        {
            "username": "mail@example.com",
            "password": "pass",
            "discoverFrequency": 60000,
            "platform": "MobileLink"
        },
        {
            "name": "Smartthings Plug (IK)",
            "BaseURL": "https://api.smartthings.com/v1/",
            "AccessToken": "xxx-d05e-4d07-xxxx-e22f353a4889",
            "GarageDoorMaxPoll": 40,
            "PollLocksSeconds": 0,
            "PollDoorsSeconds": 0,
            "PollSensorsSeconds": 0,
            "PollSwitchesAndLightsSeconds": 60,
            "PollWindowShadesSeconds": 0,
            "ExposeHumiditySensorForAirConditioners": false,
            "OptionalModeForAirConditioners": "None",
            "platform": "HomeBridgeSmartThings"
        },
        {
            "name": "TplinkSmarthome",
            "addCustomCharacteristics": true,
            "broadcast": "255.255.255.255",
            "deviceTypes": [
                "plug",
                "bulb"
            ],
            "devices": [
                {
                    "host": "192.168.2.191"
                },
                {
                    "host": "192.168.2.225"
                }
            ],
            "devicesUseDiscoveryPort": false,
            "platform": "TplinkSmarthome"
        },
        {
            "platform": "SoundTouchPlugins",
            "name": "SoundTouch",
            "discoverAllAccessories": false,
            "accessories": [
                {
                    "name": "Dining Room Speaker",
                    "room": "Dining Room",
                    "pollingInterval": 2000,
                    "ip": "192.168.1.29",
                    "volume": {
                        "mode": "lightbulb",
                        "onValue": 25,
                        "unmuteValue": 25,
                        "maxValue": 100
                    },
                    "presets": [
                        {
                            "index": 1,
                            "name": "DR1",
                            "enabled": true
                        },
                        {
                            "index": 2,
                            "name": "Dr2",
                            "enabled": true
                        },
                        {
                            "index": 3,
                            "name": "DR3",
                            "enabled": true
                        },
                        {
                            "index": 4,
                            "name": "DR4",
                            "enabled": true
                        },
                        {
                            "index": 5,
                            "name": "DR5",
                            "enabled": true
                        },
                        {
                            "index": 6,
                            "name": "DR6",
                            "enabled": true
                        }
                    ],
                    "sources": []
                },
                {
                    "name": "Office Speaker",
                    "room": "Nicoles Office",
                    "pollingInterval": 2000,
                    "ip": "192.168.1.227",
                    "volume": {
                        "mode": "lightbulb",
                        "onValue": 25,
                        "unmuteValue": 25,
                        "maxValue": 100
                    },
                    "presets": [
                        {
                            "index": 1,
                            "name": "OF1",
                            "enabled": true
                        },
                        {
                            "index": 2,
                            "name": "OF2",
                            "enabled": true
                        },
                        {
                            "index": 3,
                            "name": "OF3",
                            "enabled": true
                        },
                        {
                            "index": 4,
                            "name": "OF4",
                            "enabled": true
                        },
                        {
                            "index": 5,
                            "name": "OF5",
                            "enabled": true
                        },
                        {
                            "index": 6,
                            "name": "OF6",
                            "enabled": true
                        }
                    ],
                    "sources": []
                }
            ],
            "global": {
                "verbose": true,
                "sources": [
                    {
                        "source": "QPLAY",
                        "enabled": false
                    },
                    {
                        "source": "AUX",
                        "enabled": true
                    },
                    {
                        "source": "SIRIUSXM",
                        "enabled": true
                    },
                    {
                        "source": "Amazon Music",
                        "enabled": true
                    }
                ]
            }
        },
        {
            "units": "us",
            "interval": 5,
            "stations": [
                {
                    "nameNow": "WeatherStation",
                    "service": "openweathermap",
                    "key": "example",
                    "locationGeo": [
                        0,
                        0
                    ],
                    "locationCity": "US",
                    "language": "en",
                    "compatibility": "home",
                    "forecast": [
                        "Today",
                        "Tomorrow",
                        "In 2 days",
                        "In 3 days",
                        "In 4 days",
                        "In 5 days"
                    ],
                    "conditionCategory": "simple",
                    "now": true,
                    "extraHumidity": false
                }
            ],
            "platform": "WeatherPlus"
        },
        {
            "name": "Deebot",
            "countryCode": "US",
            "username": "mail@example.com",
            "password": "pass",
            "disableDeviceLogging": true,
            "platform": "Deebot"
        },
        {
            "email": "mail@eaxample.com",
            "password": "example!",
            "platform": "HatchBabyRest"
        },
        {
            "name": "August",
            "credentials": {
                "augustId": "mail@example.com",
                "password": "pass",
                "countryCode": "US",
                "installId": "x-4491-baca-e938e6301e73",
                "isValidated": true,
                "notice": "Keep your tokens a secret!"
            },
            "options": {
                "devices": [
                    {
                        "lockId": "example",
                        "configLockName": "Front Door",
                        "lock": {
                            "hide_lock": true
                        },
                        "overrideHomeKitEnabled": true,
                        "logging": "debug"
                    }
                ],
                "logging": "debug"
            },
            "platform": "August"
        }
    ],
    "disabledPlugins": [
        "homebridge-soundtouch-plugins",
        "homebridge-weather-plus",
        "homebridge-hatch-baby-rest",
        "homebridge-deebot",
        "homebridge-smartthings-ik",
        "homebridge-tplink-smarthome"
    ]
}

Screenshots
No response
Device & Model
Yale Assure Lock 2 fw 1.3.20
Node.js Version
20.14.0
NPM Version
10.5.2
Homebridge Version
1.8.4
Homebridge August Plugin Version
v2.2.7-beta.24
Homebridge Config UI X Plugin Version
v4.56.4
Operating System
Raspbian, Linux homebridgepi 6.1.0-rpi6-rpi-v8 #1 SMP PREEMPT Debian 1:6.1.58-1+rpt2 (2023-10-27) aarch64 GNU/Linux

I'm having same issue, any idea on how to fix this?

Getting a somewhat same error, just different undefined.
[9/27/2024, 5:19:18 PM] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[9/27/2024, 5:19:49 PM] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[9/27/2024, 5:20:18 PM] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[9/27/2024, 5:20:49 PM] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[9/27/2024, 5:21:18 PM] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[9/27/2024, 5:21:48 PM] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[9/27/2024, 5:22:19 PM] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')

It looks like my previous bug, #126, how now evolved to this as well. I'm on version 2.2.7.
[DEBUG] Lock: Name Door failed (refreshStatus) lockDetails, Error: TypeError: Cannot read properties of undefined (reading 'state')
[9/28/2024, 6:10:51 AM] [August] Lock: Name pushChanges: Cannot read properties of undefined (reading 'state')

Same issue.  I have a pair of 4th Gen Wi-Fi Smart Locks, on 2.2.7:
[9/28/2024, 9:39:00 PM] [August] Lock: Top Deadbolt pushChanges: Cannot read properties of undefined (reading 'details')
[9/28/2024, 9:39:01 PM] [August] Lock: Bottom Deadbolt pushChanges: Cannot read properties of undefined (reading 'state')
As a result, the plugin is no longer functional.  Both locks show "unlocking" in Home, despite both being locked or unlocked.  It also no longer locks or unlocks the deadbolts.

I am afraid I too have this issue.
I have reinstalled the plugin completely and set up auth again, yet this issue persists.
[05/10/2024, 21:36:33] [August] Total August Locks Found: 2
[05/10/2024, 21:36:33] [August] Adding new accessory: Back door, Lock ID: {{REMOVED}}
[05/10/2024, 21:36:33] [August] Adding new accessory: Front Door, Lock ID: {{REMOVED}}
[05/10/2024, 21:36:33] [August] Lock: Back door pushChanges: Cannot read properties of undefined (reading 'state')
[05/10/2024, 21:36:33] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[05/10/2024, 21:37:03] [August] Lock: Back door pushChanges: Cannot read properties of undefined (reading 'state')
[05/10/2024, 21:37:04] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
[05/10/2024, 21:37:33] [August] Lock: Back door pushChanges: Cannot read properties of undefined (reading 'state')
[05/10/2024, 21:37:34] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')

Homebridge v1.8.4
Homebridge August Plugin v2.2.7

Aslo having this issue.

A "me too" post but with the added note that I saw an error in the debug log and set "overrideHomeKitEnabled" to "True" as directed but the "Cannot read properties of undefined (reading 'state')" errors persist.

Same issue:
[24/10/2024, 09:07:00] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:07:00] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:07:30] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:07:30] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:08:00] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:08:00] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:08:30] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:08:30] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:09:00] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:09:00] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:09:30] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:09:30] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:10:00] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:10:00] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:10:30] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:10:30] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:11:00] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:11:00] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:11:30] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:11:30] [August] Lock: Porte d'entrée pushChanges: Cannot read properties of undefined (reading 'state')
[24/10/2024, 09:12:00] [August] Lock: Entrée secondaire pushChanges: Cannot read properties of undefined (reading 'state')

Same issue:
[07/11/2024, 14:06:48] [August] Lock: Front Door pushChanges: Cannot read properties of undefined (reading 'state')
{{repeats}}

same issue on v2.2.9
[11/21/2024, 12:43:02 PM] [August] Lock: [Lock Name] pushChanges: Cannot read properties of undefined (reading 'state')

At this point the plugin isn't even usable and I've just gone back to using the august app to control the lock. It'd just constantly drop actions all the time.

Downgrade to 2.2.6 and everything should be working fine

Seeing this same issue on the latest version and can confirm that downgrading to 2.2.6 fixes it.

authors: MrFusion4 PatrickDollard TravisNeal bgleonard chrisbrinkworth lanselius mattheworiordan mja00 mojodean osaffouri pj005975 wilferrel yweiss

repo: donavanbecker/homebridge-august

license: ISC


text:
Can't run develop or start.

Used node 4.2.6/npm 2.14
Tried donejs v0.6.0 and v0.7.0-pre.1
donejs init lottery-app
cd lottery-app
donejs develop
I'm on linux

can-serve starting on http://localhost:8080
Potentially unhandled rejection [5] Error: Error loading "jquery@2.1.4#jquery" at file:/home/nmartel/repos/dev/lottery-app/node_modules/jquery/jquery.js
Error loading "jquery@2.1.4#jquery" from "@ssr/plugins/canjs" at file:/home/nmartel/repos/dev/lottery-app/node_modules/can-ssr/lib/plugins/canjs.js
ENOENT: no such file or directory, open '/home/nmartel/repos/dev/lottery-app/node_modules/jquery/jquery.js'
    at Error (native)
Potentially unhandled rejection [5] Error: Error loading "jquery@2.1.4#jquery" at file:/home/nmartel/repos/dev/lottery-app/node_modules/jquery/jquery.js
Error loading "jquery@2.1.4#jquery" from "lottery-app@0.0.0#index.stache!done-autorender@0.6.1#autorender" at file:/home/nmartel/repos/dev/lottery-app/src/index.stache
ENOENT: no such file or directory, open '/home/nmartel/repos/dev/lottery-app/node_modules/jquery/jquery.js'
    at Error (native)

Thanks, looking into this.

Cause is getting rid of the jquery peerDependency in canjs.  Probably we need to either restore it or make it a regular dependency.

https://github.com/canjs/canjs/pull/2242

Fix has been published on NPM as 2.3.15

source: gharchive/issue

authors: Nic128 daffl matthewp

repo: donejs/donejs

license: mit

license_type: permissive

license_source: bigquery


text:
123

123123

123123

license: MIT

license_source: github-api


text:
Invalid option when trying to automate through Powershell

I will start off with I am new to Powershell.  This is my first script and I am trying to pass multiple arguments through the script.
Here is my script.  I can pass the --hevc just fine but the --add-audio 1 fails with invalid option.  I have tried splitting the options into multiple variables but still it is the same error.
I asked on the Powershell subreddit and they suggested the array.
When I manually put the options in it works everytime.
$file = Get-ChildItem -Path C:\Media\Input\BD -Filter *.mkv
$command = 'other-transcode.bat'
$args = @("--hevc","--add-audio 1")
Set-Location -Path C:\Media\Output
foreach($media in $file)
{
$mediaPath = $media.fullname
& $command $args $mediaPath
}
Any help would be appreciated.

@TheClaus I'm not a PowerShell nerd (yet) so I don't know how to fix this. But I'm sure @khaosx or others in the HiveMind™ do know.
Stay tuned. We will get you the help you need...

Here's my powershell wrapper, which may provide some inspiration:
#!/usr/bin/env pwsh

param($directory, [switch]$sw, [switch]$dryrun)

$source = Join-Path $directory $(Get-ChildItem $directory -Filter *.mkv -Name)
$crop = Get-Content $(Join-Path $directory crop.txt)
if (Test-Path $(Join-Path $directory notes.txt))
{
    $extra_args = Get-Content $(Join-Path $directory notes.txt)
}

if ($sw)
{
    if ($extra_args)
    {
        "Warning: Extra args ignored"
    }

    $command = "transcode-video `"$source`" --avbr --quick --target big --crop $crop --audio-width main=surround --add-subtitle eng"
}
else
{
    $command = "other-transcode `"$source`" --hevc --nvenc-temporal-aq --keep-ac3-stereo --burn-subtitle auto --add-subtitle eng $extra_args"
}

$command

if ($dryrun)
{
    Invoke-Expression "$command --dry-run"
}
else
{
    Invoke-Expression $command
}

I think they key bit is Invoke-Expression

Thanks so much @samhutchins I was able to get things working.  Was about ready to pull my hair out and I don't have a lot of it.

authors: TheClaus donmelton samhutchins


text:
Question - can I use this to reduce/compress video file size?

Hi,
I have some videos in various formats i.e. MP4, MOV, AVI, WMV & etc.
I found this awesome project and it looks promising. But I'm not sure whether this tool is suitable for what I'm currently building or not.
Does it posibble to use this tool to...

compress all the video sizes to lowest possible size
maintain the video and audio quality
make all of them (the output) in MP4 format (I think this one is possible)

...?
Thank you.

@zulhfreelancer Yes, that's exactly what this project is designed for. :)
If the "README" or the built-in documentation via transcode-video --help don't answer your questions on how to do that, please feel free to ask again here.

Noted. Thanks @donmelton!

authors: donmelton zulhfreelancer


text:
可以打印任何变量

let r = vec![1,2,3,4];
    traces!(log, "traces>>>>{} AAAAAAAAA {} {} {} {:?}", "Some string", 1, 2, 3);

这样目前是无法打印的吗

traces!(log, "traces>>>>{} AAAAAAAAA {} {} {} {:?}", "Some string", 1, 2, 3); 是可以打印的。
打印结果是：[TRACE] 2024-06-05 22:59:09 testlog.rs 58:traces>>>>{} AAAAAAAAA {} {} {} {:?},Some string,1,2,3
这里 "traces>>>>{} AAAAAAAAA {} {} {} {:?}" 会被当初字符串直接打印出来。
跟标准库有一些区别。tklog提供的宏打印方法，第一个参数不是格式字符串。所有参数都是原样打印出来。
你的示例应该是漏掉了要打印的 vec!变量 。tklog提供的宏打印目前无法打印 vec! 类型，参数必须为基础数据类型或实现了 std::fmt::Display的对象。
如果打印 ("traces>>>>{} AAAAAAAAA {} {} {} {:?}", "Some string", 1, 2, 3,r)
你希望打印的结果是 traces>>>>Some string AAAAAAAAA 1 2 3 [1,2,3,4]
建议标准库的接口打印  tklog已经实现了标准库接口
tklog下个版本0.0.4 会提供一个类似标准库接口的方法，可以直接打印自定义格式化参数

tklog 0.0.4
#[test]
fn testformats() {
    let mut log = Logger::new();
    log.set_console(true)
        .set_level(LEVEL::Debug)
        .set_cutmode_by_time("tklogs.log", MODE::DAY, 10, true);
    let mut logger = Arc::clone(&Arc::new(Mutex::new(log)));
    let log = logger.borrow_mut();

    let v = vec![1, 2, 3];
    tklog::formats!(log, LEVEL::Debug, "Debug>>>{},{}>>>{:?}", 1, 2, v);

    let v2 = vec!['a', 'b'];
    tklog::formats!(log, LEVEL::Info, "Info>>>{},{}>>{:?}", 1, 2, v2);
    tklog::formats!(log, LEVEL::Warn, "Warn>>>{},{}", 1, 2);
    tklog::formats!(log, LEVEL::Error, "Error>>>{},{}", 1, 2);
    tklog::formats!(log, LEVEL::Fatal, "Fatal>>>{},{}", 1, 2);

    thread::sleep(Duration::from_secs(1))
}

执行结果：
[DEBUG] 2024-06-06 15:54:07 testsynclog.rs 80:Debug>>>1,2>>>[1, 2, 3]
[INFO] 2024-06-06 15:54:07 testsynclog.rs 83:Info>>>1,2>>['a', 'b']
[WARN] 2024-06-06 15:54:07 testsynclog.rs 84:Warn>>>1,2
[ERROR] 2024-06-06 15:54:07 testsynclog.rs 85:Error>>>1,2
[FATAL] 2024-06-06 15:54:07 testsynclog.rs 86:Fatal>>>1,2

tklog 0.0.4
#[test]
fn testformats() {
    let mut log = Logger::new();
    log.set_console(true)
        .set_level(LEVEL::Debug)
        .set_cutmode_by_time("tklogs.log", MODE::DAY, 10, true);
    let mut logger = Arc::clone(&Arc::new(Mutex::new(log)));
    let log = logger.borrow_mut();

    let v = vec![1, 2, 3];
    tklog::formats!(log, LEVEL::Debug, "Debug>>>{},{}>>>{:?}", 1, 2, v);

    let v2 = vec!['a', 'b'];
    tklog::formats!(log, LEVEL::Info, "Info>>>{},{}>>{:?}", 1, 2, v2);
    tklog::formats!(log, LEVEL::Warn, "Warn>>>{},{}", 1, 2);
    tklog::formats!(log, LEVEL::Error, "Error>>>{},{}", 1, 2);
    tklog::formats!(log, LEVEL::Fatal, "Fatal>>>{},{}", 1, 2);

    thread::sleep(Duration::from_secs(1))
}

执行结果：
[DEBUG] 2024-06-06 15:54:07 testsynclog.rs 80:Debug>>>1,2>>>[1, 2, 3]
[INFO] 2024-06-06 15:54:07 testsynclog.rs 83:Info>>>1,2>>['a', 'b']
[WARN] 2024-06-06 15:54:07 testsynclog.rs 84:Warn>>>1,2
[ERROR] 2024-06-06 15:54:07 testsynclog.rs 85:Error>>>1,2
[FATAL] 2024-06-06 15:54:07 testsynclog.rs 86:Fatal>>>1,2

好的 提个建议 如果能有个 异步 buf 写入 可以根据时间 数量 来刷到磁盘 和同步模式 （我之前用go写过 rust入手不久 ） 感觉会更好，此log 就很丰富了 有可能成为爆品

这样 这个log就要变成传入的 而且要全局的 在内部实现个format呢

好的 提个建议 如果能有个 异步 buf 写入 可以根据时间 数量 来刷到磁盘 和同步模式 （我之前用go写过 rust入手不久 ） 感觉会更好，此log 就很丰富了 有可能成为爆品

感谢建议！加入缓冲区写入机制的 目的应该是希望提高写入的吞吐量，这在高并发或高性能服务场景下，的确可以显著提升日志写入的效率。tklog目前默认使用延迟模式写日志， 在写入性能上有一定的优化效果，比正常多线程同步锁的模式在性能上高2-4倍。后面在性能优化上会重点考虑你的建议.

这样 这个log就要变成传入的 而且要全局的 在内部实现个format呢

新增的format主要是针对多实例的情况，所以log是要传入的。log对象并非必须要全局的，但是生命周期应该大于等于你调用的日志方法。
多实例主要应用在项目中需要设置多种日志规则，多个不同日志文件的情况。
如果你项目中不需要多实例，那么应该使用全局实例，全局实例的效率比多实例更高，而且支持标准库API
之所以fomat宏只实现了多实例，是因为标准库API本身就具备第一个参数格式化的功能：
使用 tklog+标准库log 的示例：用 uselog() 启用tklog支持标准库API
use std::{thread, time::Duration};
use tklog::{LEVEL, LOG};
fn test_synclog() {
    //初始化
    LOG.set_console(true)
        .set_level(LEVEL::Trace)
        .set_cutmode_by_size("logsize.log", 10000, 10, true)
        .uselog();  //启用官方log库
    let r = vec![1, 2, 3];
    log::trace!("trace>>>>{}{}{}{}{:?}", "aaaa", 1, 2, 3, r);
    log::debug!("debug>>>>{}{}{:?}", 1, 2, r);
    log::info!("info log");
    log::warn!("warn log");
    log::error!("error log");
    thread::sleep(Duration::from_secs(1))
}

执行结果：
[TRACE] 2024-06-06 17:53:25 testlog.rs 34:trace>>>>aaaa123[1, 2, 3]
[DEBUG] 2024-06-06 17:53:25 testlog.rs 35:debug>>>>12[1, 2, 3]
[INFO] 2024-06-06 17:53:25 testlog.rs 36:info log
[WARN] 2024-06-06 17:53:25 testlog.rs 37:warn log
[ERROR] 2024-06-06 17:53:25 testlog.rs 38:error log

好的 提个建议 如果能有个 异步 buf 写入 可以根据时间 数量 来刷到磁盘 和同步模式 （我之前用go写过 rust入手不久 ） 感觉会更好，此log 就很丰富了 有可能成为爆品

感谢建议！加入缓冲区写入机制的 目的应该是希望提高写入的吞吐量，这在高并发或高性能服务场景下，的确可以显著提升日志写入的效率。tklog目前默认使用延迟模式写日志， 在写入性能上有一定的优化效果，比正常多线程同步锁的模式在性能上高2-4倍。后面在性能优化上会重点考虑你的建议.

这样 这个log就要变成传入的 而且要全局的 在内部实现个format呢

新增的format主要是针对多实例的情况，所以log是要传入的。log对象并非必须要全局的，但是生命周期应该大于等于你调用的日志方法。
多实例主要应用在项目中需要设置多种日志规则，多个不同日志文件的情况。
如果你项目中不需要多实例，那么应该使用全局实例，全局实例的效率比多实例更高，而且支持标准库API
之所以fomat宏只实现了多实例，是因为标准库API本身就具备第一个参数格式化的功能：
使用 tklog+标准库log 的示例：用 uselog() 启用tklog支持标准库API
use std::{thread, time::Duration};
use tklog::{LEVEL, LOG};
fn test_synclog() {
    //初始化
    LOG.set_console(true)
        .set_level(LEVEL::Trace)
        .set_cutmode_by_size("logsize.log", 10000, 10, true)
        .uselog();  //启用官方log库
    let r = vec![1, 2, 3];
    log::trace!("trace>>>>{}{}{}{}{:?}", "aaaa", 1, 2, 3, r);
    log::debug!("debug>>>>{}{}{:?}", 1, 2, r);
    log::info!("info log");
    log::warn!("warn log");
    log::error!("error log");
    thread::sleep(Duration::from_secs(1))
}

执行结果：
[TRACE] 2024-06-06 17:53:25 testlog.rs 34:trace>>>>aaaa123[1, 2, 3]
[DEBUG] 2024-06-06 17:53:25 testlog.rs 35:debug>>>>12[1, 2, 3]
[INFO] 2024-06-06 17:53:25 testlog.rs 36:info log
[WARN] 2024-06-06 17:53:25 testlog.rs 37:warn log
[ERROR] 2024-06-06 17:53:25 testlog.rs 38:error log


text:
Custom Icons not working in the latest version of flutter

Version of flutter_calendar_carousel
v1.4.11
Expected behavior
Running this code example given I expected an application like the one below which is shown in the README.

Actual behavior
I get an app with no person icons in the bottom right corner.

flutter doctor result (run flutter doctor in terminal)
[√] Flutter (Channel stable, v1.12.13+hotfix.8, on Microsoft Windows [Version 10.0.18362.657], locale en-GB)

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[√] Android Studio (version 3.6)
[√] Connected device (1 available)

• No issues found!

Steps to reproduce the behavior

Download the latest version of flutter and  flutter_calendar_carousel v1.4.11
Copy the code from here
Run the application and you'll see no icons.

I'm also facing this issue, tried the newest version of flutter (v1.12.13+hotfix.9) and also tried to downgrade to v1.12.13+hotfix.5 but still, this feature is not working. Any update or possible workaround? Thanks!

Sorry for the delay. I've seen this issue earlier but forgot to reply
Try to add below code in _calendarCarouselNoHeader. This example is only applied in weekFormat in our example project.
      markedDateShowIcon: true,
      markedDateIconMaxShown: 2,
      markedDateIconBuilder: (event) {
        return event.icon;
      },
      markedDateMoreShowTotal:
          true,

authors: hyochan kcissewski true-zero


text:
getAvailablePurchases returns nothing on IOS when no internet connection

Version of flutter_inapp_purchase
0.8.8+1
Platforms you faced the error (IOS or Android or both?)
Only IOS
Expected behavior
Returning purchases made previously
Actual behavior
Does not return anything
Tested environment (Emulator? Real Device?)
Real device
Steps to reproduce the behavior
Cut your internet connection and try calling 'await getAvailablePurchases()' or similarly 'await getPurchaseHistory()'
First of all, I appreciate your work. Plug-in works just perfect in Android. It is very easy to use.
Problem is that, when user is not connected to internet, functions 'getAvailablePurchases' or 'getPurchaseHistory' does not return anything. Because they return nothing and used with await, instructions after these functions are not executed. When connected to internet, everything works just fine. With or without connection, these functions works just fine on Android by the way.
I will be appreciated if you can solve this. My app needs to run offline properly, for that I need to use these functions. Hope you can help, thanks by now

this happens on Android too.

@ozexpert My Android app works fine when no connection. Checked again when I read you, it's still working 👍🏼

@hyochan Are you also facing this issue? Asking to detect if I am doing something wrong.

@sercan-ersoy-2015400039 Actually, I am not using this in any of our apps. I've just ported react-native-iap here.

@sercan-ersoy-2015400039 @hyochan  donno what the differences are, but my android app returns empty list for non-consumable products (i have no consumable products).

@ozexpert @hyochan By returns nothing I mean literally nothing. Not empty list, not null. So, "await getAvailablePurchases()" executes forever, instructions called after this are not executed at all because it does not terminate. Of course there are difference between what you are saying and what I am facing. And I am facing this situation only on IOS when there is no internet connection.

2.0.0+ has raised today. Please feel free to reopen after trying out 2.0.0+5 or above.


text:
update data processing

@hannahmoro - updated the data prep per your request

Merging into the main branch for updating data analysis

source: gharchive/pull-request


text:
Add Defacto

Please review our Contribution Guidelines to ensure your changes abides by it.
Review your changes and complete the checklist below.

[x] Company name
[x] Company description
[x] Company location
[x] GitHub link
[x] How Elixir is used
[x] Sorted alphabetically

Thank you for the addition @sn3p 😁

repo: doomspork/elixir-companies


text:
Error: failed to send start dataflow message

Describe the bug
(dora3.7) jarvis@jia:~/coding/dora_home/dora-drives$ proxychains dora start graphs/tutorials/webcam_single_dpt_frame.yaml --attach --hot-reload --name dpt_midas
ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:1080-<><>-127.0.0.1:6012-<><>-OK
Error: failed to send start dataflow message

Caused by:
    failed to fill whole buffer

Location:
    binaries/cli/src/main.rs:214:10
(dora3.7) jarvis@jia:~/coding/dora_home/dora-drives$

To Reproduce
Steps to reproduce the behavior:

Dora start daemon: dora up
Start a new dataflow: proxychains dora start graphs/tutorials/webcam_single_dpt_frame.yaml --attach --hot-reload --name dpt_midas

Expected behavior
dora can support proxy mode, the purpose is to quickly download foreign acceleration algorithm models
Environments (please complete the following information):

System info: Linux jia 5.15.0-70-generic #77~20.04.1-Ubuntu SMP Wed Apr 5 09:38:34 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Dora version: 0.2.2

We don't plan on supporting adhoc proxy for now. You can check your proxy configuration for whitelisting localhost and 127.0.0.1.

I would be curious to understand why this is failing. @NavyHub Could you explain a bit more what proxychains does? I'm not familiar with this tool.

authors: NavyHub haixuanTao phil-opp

repo: dora-rs/dora


text:
Don't connect to setlist.fm if no API key

I don't have a setlist.fm key and for testing purposes don't need one. This minor change makes it easier to run locally without slowing things down by continuously getting 403s from setlist.fm because of a missing API key.

Not quite sure what Github is doing with this - it's saying changes need to be addressed but they have been - is it in the right state for you to approve?

Not quite sure what Github is doing with this - it's saying changes need to be addressed but they have been - is it in the right state for you to approve?

The last change is adding the braces for the if-statement in the suggested change I have above

Ah! Fixed now. I need to set up the formatter...

Ah! Fixed now. I need to set up the formatter...

Don't worry too much about it - I'll let most syntax stuff go, I just mentioned this one so you know my preference for the future. My formatter will fix anything up next time I touch the file so it's no big deal


text:
Remove MULTIPLE_FILES from code

It was already deprecated a few month ago, it's time to remove it and clean some parts of the code.

@desbrowne
So without MULTIPLE_FILES you can get the same functionality with a custom template. The return value of the custom template function should return an array of FileOutput, so you should be able to iterate all documents.operations and create a matching file.
Here are things that might help you:

Example for custom template as package
As you can see in the first link, you should follow the CustomProcessingFunction interface for you function, and this is it's signature.
You should be able to get the name of the file from mergedDocuments, it includes operations and fragments. So you can get from there the queries and the filenames.
Your custom template function can be async, and should return FileOutput[] to write to the fs.

Done in 0.14 🎉

repo: dotansimha/graphql-code-generator


text:
[typo] Update base-visitor.ts

correct typo

Thank you @rfreydi !

authors: dotansimha rfreydi


text:
I can connect but cannot write on the device

i can connect to the device but cannot write.
after I connect to the device i'm getting the response. But after that when try to send data, iis giving me the attached error.
my code is below.
    const conectedDevice = await manager.connectToDevice(device.id)

    await device.discoverAllServicesAndCharacteristics()

    const services = await device.services()

    const characteristics = await services[1].characteristics()

    const characteristic = _.find(
      characteristics,
      ({isWritableWithResponse}) => isWritableWithResponse === true,
    )

   const base64Data = base64.encode(
      '{ "Command": "SALE", "Amount": "000000001000" }',
    )

    const response = await characteristic.writeWithResponse(base64Data)

    // const response =await device.writeCharacteristicWithResponseForService(
    //   '"4DF91029-B356-463E-9F48-BAB077BF3EF5"',
    //   characteristic.uuid,
    //   base64Data,
    // )

    // const response = await manager.writeCharacteristicWithResponseForDevice(
    //   characteristic.deviceID,
    //   characteristic.serviceUUID,
    //   characteristic.uuid,
    //   base64Data,
    // )
    console.log('response', response)

@AzranAzwer , did you manage to fix this issue?

no

Hi All I have fixed this issue
Actually my encryption was wrong after I tried for couple of methods, I got the exact encryption way.

can you share how did you encrypt ?

authors: AzranAzwer hoanghai9650 ziedhajsalah

repo: dotintent/react-native-ble-plx


text:
实现open-tracing的Logging Events API

http://opentracing.io/documentation/pages/instrumentation/common-use-cases.html

https://github.com/opentracing-contrib/opentracing-specification-zh/blob/master/specification.md

https://github.com/opentracing-contrib/opentracing-specification-zh/blob/master/semantic_conventions.md

repo: dotnet-lab/Butterfly


text:
Anyway for Intellisense to work for static resources in RCL?

Hello!
I have successfully added static files  (i.e. jQuery 3.4.1 and Bootstrap 4.4.1) to my .NET Core 3.1 Razor Class Library and am able to use the files in multiple projects (awesome).  However, there is no IntelliSense for the CSS/JavaScript items when I am working in the Razor pages of the web projects that reference the RCL (not so awesome).  The IntelliSense works as expected only for files located within the RCL.
Is there any way to get the CSS/JavaScript IntelliSense working on dependent projects without adding the the files directly to the project?  The whole idea of course is to not have to add/update them in the dependent projects.
Thanks!

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

ID: 9fd019c7-ceb7-6ef3-26ba-6b44341b6fc5
Version Independent ID: fd116d00-0dc7-efaf-c714-34d77b345a05
Content: Reusable Razor UI in class libraries with ASP.NET Core
Content Source: aspnetcore/razor-pages/ui-class.md
Product: aspnet-core
Technology: aspnetcore-razorpages
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

I found information on a workaround for JavaScript files here:
https://stackoverflow.com/questions/59909704/js-css-intellisense-between-projects-in-vs-2019
I am still having an issue with how to reference CSS via IntelliSense (especially Bootstrap) that only resides in the RCL.

Moved to Master issue: Create reusable UI using the RCL project #16639

This doesn't appear to be a scenario we currently support, so there isn't anything to document here. We have issues tracking improvements to this area.

authors: MackinnonBuck Rick-Anderson shawnpaige


text:
[Blazor] Lifecycle - Component disposal - Explain why finalizers are not being used

Description
I propose adding the following subsection to the Component disposal with IDisposable and IAsyncDisposable section:
Unmanaged Resources and Finalizers
Blazor components are not designed to directly use unmanaged resources, such as file handles, and therefore, they don't need to implement an object's finalizer (historically referred to as a destructor). There's no need to implement the full dispose pattern with finalizers within a component. However, adopting the simplified dispose pattern to support inheritance is still suggested.

I'm still debating whether this addition is necessary. It might only be relevant for those familiar with the comprehensive resource-wrapper pattern (dispose pattern) and wondering why Blazor doesn't use GC.SuppressFinalize(this) and finalizers.
@guardrex, have you encountered any questions or issues related to finalizers in Blazor?
Page URL
https://learn.microsoft.com/en-us/aspnet/core/blazor/components/lifecycle?view=aspnetcore-8.0
Content source URL
https://github.com/dotnet/AspNetCore.Docs/blob/main/aspnetcore/blazor/components/lifecycle.md
Document ID
4871f4f7-9cf6-ac7a-0f21-c65d34bd1119
Article author
@guardrex

No questions on the subject that I can recall.
We have some sample code that uses GC.SuppressFinalize(this). IIRC, it was either code sent over for publication or my reaction to static analysis that suggested it.
I defer to you working out with the PU (@MackinnonBuck for now) on what should be covered and how. @MackinnonBuck may ping others ... Javier ... Steve ... if needed.

I checked on the calls to SuppressFinalize in sample code ... it's only done in C# code, not in components. I think we're good on that point.

I didn't hear back from Mackinnon on this one. Go ahead and add if the paragraph if you wish, and I'll email him to look at your PR.

I would say adding that detail to the docs probably isn't necessary. If it ever becomes a source of confusion, we could add a note like that, but I don't think customers will write finalizers in components unless they're following samples, and we don't provide samples that do that.

Thx @MackinnonBuck and @hakenr.

authors: MackinnonBuck guardrex hakenr


text:
Match/Assign part error

Match part error

Thanks @wuyuansushen.


text:
Update native-aot.md

@tdykstra  what's needed for notification and to assign updates? I'm assuming both author tags.
@mitchdenny  I'm changing author to make it easier to manage updates.

Internal previews

📄 File
🔗 Preview link

aspnetcore/fundamentals/native-aot.md
ASP.NET Core support for Native AOT

@tdykstra what's needed for notification and to assign updates? I'm assuming both author tags.
@mitchdenny I'm changing author to make it easier to manage updates.

author is the GitHub ID, which is what gets the GitHub notifications, but yes, we should update both when we take an article.

authors: Rick-Anderson tdykstra


text:
Is v4 ready for release - nuget versions are tagged preview

Hi,
Is there a timeline on a final version v4.0 available on nuget? Preview 5 is a couple of months old, is it deemed safe for use in production systems or only for testing (waiting for v4.0)?
Or simply grab the latest code off the MAIN branch?

Version 4.0 is still in development. Only bug fixes and small API changes and the version will be finalized within the next couple of  weeks. Please checkout the MyGet feed (URL in README). It contains latest automated builds. Betas etc. are no longer pushed to nuget.

repo: dotnet/MQTTnet


text:
Upgrade from Framework to Standard

Hello,
I am looking to gradually upgrade several projects one at a time from .NET Framework -> .NET Standard 2.0.
However I have several projects referencing Microsoft.SqlServer.Types (using SqlGeography)
How do I upgrade the lowest project first to .NET standard 2.0 while still maintaining existing references. I am confused if I should be using this library or something else.
As a note I am using System.Data.SqlClient everywhere, I could upgrade it.
Thanks!

Just use Microsoft.Data.SqlClient 5 with the latest Microsoft.SqlServer.Types package

@DanPatten did upgrading to Microsoft.Data.SqlClient 5.x resolve the issue for you?

I'm going to try that and see if that works, thanks!

So just to confirm this will work correct?
The Microsoft.SqlServer.Types being on .NET Standard 2.1 is what is confusing me

@DanPatten Why? Microsoft.SqlServer.Types targets NET Standard 2.1 & NET Framework 462 ...

Can a .NET standard 2.0 library reference a 2.1 standard library?

I tried the above scenario and getting this error:
Warning	NU1701	Package 'Microsoft.SqlServer.Types 160.1000.6' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.	ClassLibrary1

@DanPatten you need to target net462 or netstandard2.1 (or both) with Microsoft.SqlServer.Types (bad design decision imgo)

Makes sense, really makes it hard to upgrade when 2.1 standard isn't compatible with framework.

You can target multiple "frameworks" on the same project and/or share code..

authors: DanPatten ErikEJ lcheunglci

repo: dotnet/SqlClient


text:
WatsonWebserver.Core.dll - System.Text.Json loading issue.

Hello, with the last version of the nuget package, an issue started to happen, which is related to assembly loading.

This states that the assembly System.Text.Json is unable to be loaded.
I tried to copy it to the output directory, didn't help.
For some reasons this happens when loading it as a library alone, loading it within a server using the package makes this issue disapear.
So to sum it up:
HTTPServer -> Plugin -> WatsonWebserver.Core.dll -> Fails.
WatsonWebserver.Core.dll -> Costura.Fody -> HTTPSecureServer -> Plugin -> Success.

Strange, this isn't happening for me using WatsonWebserverTest.  Any additional steps to help reproduce?

Yep, strange issue, the steps to reproduce are this:
Go to this project https://github.com/GitHubProUser67/MultiServer3
Dowload it via the download zip function, then press build.bat
After this go to ~BuildOutput/Multiserver/Debug|Release and start the HTTPServer.exe

Just built it and didn't receive an error.

Yep, that's because there is no plugins.
Ideally compile a plugin such as HomeWebTools and start the server.

Sorry, I built from VS instead of running build.bat.  Reporting back in a moment.

Yep, I see the exception.
It looks like you're running into an issue caused by dependency loading from using things like Assembly.LoadFromFile and other similar methods.
I've had to deal with this in other projects, and to get around it, I've had to ensure that subordinate projects correctly packed dependencies in their output.  Specifically, this in the .csproj file.  e.g. if project A is dynamically loading project B, project B must have this in the .csproj file, specifically within the top-level property group, to ensure the right DLLs are packed:
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<PublishSingleFile>true</PublishSingleFile>
<SelfContained>true</SelfContained>

I'm happy to chat with you to go through a very, very similar example to yours that caused me to go through this exact exercise and deal with this same problem.  Please feel free to email me at joel dot christner at gmail dot com.
However, since this isn't an issue with the library, I'll close this and move it to discussions.
Cheers, Joel

repo: dotnet/WatsonWebserver


text:
[.NET9] [unstable] Failed to debug maui project on Android platform

Affected Branch: Pull request 568454: Update .NET 9 to preview 7 - Repos (visualstudio.com)  Affected Build: 17.12.0 Preview 1.0 [35201.130.main] Note: This is not a blocking issue and if you continue to click Debug, debugging will succeed.  Steps to reproduce: 1. Download the .NET 9 PR build Pull request 568454: Update .NET 9 to preview 7 - Repos (visualstudio.com), use the rollback to install workloads. (attached in Attachments) 2. Create a maui project and debug with Android emulator or physical device. 3. You'll encounter the Bug 2081325 and please add the <EmbedAssembliesIntoApk>true</EmbedAssembliesIntoApk> in .csproj to resolve it. 4. Debug with Android platform again.  Actual result: Failed to debug to Android platform with the below error:  Expected result: Debug successfully.
View on AzDO

They are saying they can't reproduce this anymore: https://dev.azure.com/devdiv/DevDiv/_workitems/edit/2183569#4148674
The testers closed, saying they would reopen if it happens again.
If someone sees an error similar to:

Can you comment and share a .binlog? Thanks! https://aka.ms/binlog

authors: jonathanpeppers samhouts

repo: dotnet/android


text:
Sample request:  existing onprem sql server integration

Wondering if it's even a thing anymore, it used to be the standard, but a simple example of an Aspire orchestration utilizing an existing OnPrem sql server database that can't be changed via migrations, accessed via EF and referenced in many projects.
The reason I ask is that the current SQL implementation utilises a container image with no other options.  Whilst I understand that this is to empower the Dev Experience, many of us don't work on green field apps or demos, but instead need to hook to existing infrastructure.
Even the SqlServerEndToEnd project doesn't show how.

You can connect to an existing server by adding a connection string to your app model using builder.AddConnectionString. The challenge with making a sample for that is that of course it will actually require a connection string to be set in configuration (likely user secrets given it often contains a password) and then to work will need a server instance available.

authors: Allann DamianEdwards

repo: dotnet/aspire-samples


text:
Upgrade C# language-configuration.json

Found that C# in VSCode did not have a pre-requisite for wordPattern's / indentation rules. Due to JavaScript overlapping C#'s structures significantly I'm blindly using those rules in order to enable better smart indent behaviors.
Added wordPattern and indentationRules.

wordPattern influences all sorts of features, completion being one of them so if you type foo-bar completion won't dismiss when you type the -.
indentationRules influence the indentation when you enter a newline or the base indentation for your cursor when you click around the document (smart indent).

/cc @dibarbet @JoeRobich, any idea why O# doesn't have indentation rules etc.? After playing around with JS' rules they seem to work really really well in C# hence why I felt like adopting them was an adequate approach. Let me know if you have any concerns and or improvements to the below.
Part of dotnet/aspnetcore#33085

any idea why O# doesn't have indentation rules etc.?

Would it be better to get them into the O#-vscode or try and get them into VSCode proper (https://github.com/microsoft/vscode/blob/main/extensions/csharp/language-configuration.json)?

Would it be better to get them into the O#-vscode or try and get them into VSCode proper

Probably vscode proper. But keep in mind I just hijacked JS' language-configuration.json since the rules overlap significantly with C#. Not sure if there's something better that can be done though

authors: JoeRobich NTaylorMullen

repo: dotnet/aspnetcore-tooling


text:
Core assets missing / Nuget Packages do not restore, and/or corrupt NuGetFallbackFolder

This issue is exactly as described in:
#1006 - ".Net Core v2.0 - Nuget Packages are not getting restored"
and
#5995 - "Assets from packages are missing after restore"
#920 - ".NET Core 2 does not work...."
But, I actually just performed a Windows Defender full "System Refresh", and then a full reinstall of VS Enterprise 15.5.2, and had the issue, so then uninstalled, and did VS Installer InstallCleanup -f, and even after that yet one more full Repair ...
And still I was only able to fix it by eventually removing the NuGetFallbackFolder.
I thought I should post another issue because none of those extensive 'Repairs' actually fixed the problem!

@steevcoco what was the permanent resolution? I don't think running dotnet restore int the console is acceptable. Preferred behaviour is when you create a new project in Visual Studio and build, all dependencies should resolve.

@salmonz sorry: I actually closed the issue because I have not seen the problem again ...
My ACTUAL solution did require deleting the NuGetFallbackFolder. You THEN can do dotnet restore on some solution to rebuild that folder: I had to delete the folder to get it in working order again.
I closed the issue because it has just been sitting open ... Perhaps I should re-open it.

authors: salmonz steevcoco

repo: dotnet/core


text:
Raspberry Pi instructions outdated

Issue Title
Raspberry Pi instructions outdated
General
https://github.com/dotnet/core/blob/master/samples/RaspberryPiInstructions.md
It mentions there is no Arm32 SDK but there are currently Arm32 and Arm64 SDKs for .NET Core 2.2

@krwq can you help here?

authors: goigle scalablecory


text:
why has Microsoft gotten so lazy that we have to do all this ourselves I am not a coder nor do I know anyone who is even able to help with this stuff

Problem encountered on https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install
Operating System: windows
Provide details about the problem you're experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.

How did you end up in this tutorial @DTMENNIS? This tutorial is supposed to be for people wanting to learn how to develop.
I'm trying to figure out if in some tool or process we're sending people to this page when we shouldn't.

@mairaw I think the issue is related to the fact that whenever a new dotnet core app is created, by default it has the hello world and people visit the page with an expectation to get a tutorial, whereas all they get is the instruction to create and run the app which is confusing for people just starting out with dotnet.

authors: DTMENNIS mairaw riddletom76


text:
C++/CLI targeting .net core (.net 6)

When trying to make a new c++/cli project to target .net core instead of .net framework, or when changing an existing project to target it, it gives error when applying the setting. I've tried all different possible configurations on the project and it keeps on the same problem, I just cannot target the .net core on it.

@jkoritzinsky can you help with this?

Does this occur with any .NET project or just C++/CLI?

Does this occur with any .NET project or just C++/CLI?

This only happens when i try building an C++/CLI using netcore, if i use net framework it goes fine, and if i try to use c# it also goes fine.

I'm not sure why the correct MSBuild files aren't being included.
@wli3 can you tag the C++ project system on this issue so they can take a look?

@olgaark

Apparently, Microsoft.NET.ILLink.targets are using a property for the task location which is not defined in vcxproj, which imports common msbuild props/targets, but not c# ones. Run msbuild /pp on a c# project to see where this property is defined.

@agocke

up up.

any updates, it seems VS2022 C++ clr can't target .net 6

.net 5 End of support is May 08, 2022
but now VS 2022 C++ clr still doesn't support .NET 6!!!!!!

There is only .net core 3.1 and .net 5, still no .net 6 support now!!

This issue was previously describing a problem with C++/CLI colliding with the ILLink targets. That issue is now fixed. This appears to be a different problem. I'm opening a new issue for it.

Actually, this appears to be specific to Visual Studio -- please open a VS feedback issue if you are having issues with Visual Studio.

authors: HKunogi agocke antonfirsov jkoritzinsky kzhui125 olgaark snikeguo wli3


text:
.NET April 2024 Update - .NET 8.0.4, NET 7.0.18, .NET 6.0.29

.NET April 2024 Update
Release Notes

8.0.4
7.0.18
6.0.29

Status

Asset Type
8.0.4
7.0.18
6.0.29
Notes

Installers/Binaries
✅
✅
✅

Snaps
✅
✅
✅

Linux Packages (Microsoft distribution)

The list below refers to the Microsoft-provisioned feeds (packages.microsoft.com) and does not in any way represent direct availability in distros (eg RHEL, Fedora).

     Centos 7
NA
✅
✅

     Centos 8
✅
✅
✅

     Debian 10
✅
✅
✅

     Debian 11
✅
✅
✅

     Debian 12
✅
✅
✅

     Fedora 37
✅
✅
✅

     Fedora 38
✅
✅
✅

     Fedora 39
✅
✅
✅

     OpenSUSE 15
✅
✅
✅

      Ubuntu 20.04
✅
✅
✅

     Ubuntu 22.04
✅
✅
✅

     Ubuntu 23.04
✅
✅
✅

Issues
Please report any issues you find either by responding to this issue, creating a new issue or creating a new issue in one of the following repos:

ASP.NET Core: dotnet/aspnetcore
Entity Framework Core: dotnet/efcore
.NET CLI/SDK dotnet/sdk
.NET runtime dotnet/runtime
Winforms: dotnet/winforms
WPF: dotnet/wpf
NuGet: nuget/home
Containers: dotnet/dotnet-docker
Winget: microsoft/winget-pkgs

Known Issues

Visual Studio Compatibility
You need Visual Studio 17.9 or later to use .NET 8.0 on Windows.

Is this a typo in 8.0.4 release notes? Or is 17.8 LTSC no longer supported for .net 8 development?

It seems the runtime-deps v8.0.4 wasn't uploaded to https://packages.microsoft.com/centos/8/prod/Packages/d/
I get "nothing provides" when updating.

I am getting similar error where runtime-deps 8.0.4 is not found:
Error: Package: dotnet-runtime-8.0-8.0.4-1.x86_64 (packages-microsoft-com-prod)
#5 14.61            Requires: dotnet-runtime-deps-8.0 >= 8.0.4
#5 14.61            Available: dotnet-runtime-deps-8.0-8.0.0-1.x86_64 (packages-microsoft-com-prod)
#5 14.61                dotnet-runtime-deps-8.0 = 8.0.0-1
#5 14.61            Available: dotnet-runtime-deps-8.0-8.0.1-1.x86_64 (packages-microsoft-com-prod)
#5 14.61                dotnet-runtime-deps-8.0 = 8.0.1-1
#5 14.61            Available: dotnet-runtime-deps-8.0-8.0.2-1.x86_64 (packages-microsoft-com-prod)
#5 14.61                dotnet-runtime-deps-8.0 = 8.0.2-1
#5 14.61            Available: dotnet-runtime-deps-8.0-8.0.3-1.x86_64 (packages-microsoft-com-prod)
#5 14.61                dotnet-runtime-deps-8.0 = 8.0.3-1
#5 14.61  You could try using --skip-broken to work around the problem
#5 14.64  You could try running: rpm -Va --nofiles --nodigest

@j-hudecek and @csgi-enochtsaicsgi - sorry for the inconvenience. This was fixed late yesterday.

closing in favor of https://github.com/dotnet/core/issues/9309

authors: MagicAndre1981 csgi-enochtsaicsgi j-hudecek leecow rbhanda


text:
Add Tests for Memory to validate the != and == operators

Related to PR #1143
https://github.com/dotnet/corefxlab/pull/1143#issuecomment-274281682

Duplicate of #1144

repo: dotnet/corefxlab


text:
[armel] CoreRT Linux/armel progress

This task is for reporting progress of CoreRT Linux/armel support.
People are working on it @Dmitri-Botcharnikov @sergign60 @alpencolt @BredPet
Applications
On the latest master we are able to compile and execute Binary-trees, Spectral-norm, Mandelbrot and Fannkuch-redux(without threading version) benchmarks from CoreCLR. ElmSharp Hello Tizen application as well. All apps launched on Samsung Z3 phone
armel cross build on x86 host
It's possible to cross compile application for armel on x86  host (or on x64 using rootfs) now.
Compilation time for HelloWorld application is reduced from 25 minutes (on Samsung Z3) to 3 minutes on PC. So for compiling all BringUpTests from CoreCLR it's needed about 6 hours (or about 3 days on mobile phone:scream:).
Documentation will be added soon.
BringUpTests from CoreCLR
1 Failed on compilation
11 FAIL
146 SUCCESS

Failed on compilation on CoreRT:

RecursiveTailCall.exe
Process is terminating due to StackOverflowException.

Assertion:

LocallocLarge.exe: corert/src/Native/Runtime/unix/UnixContext.cpp:538: bool FindProcInfo(UIntNative, UIntNative *, UIntNative *): Assertion `(procInfo.start_ip <= controlPC) && (controlPC < procInfo.end_ip)' failed.
FAIL LocallocLarge.exe

Bus error:

ArrayExc.exe
DivConst.exe
Localloc.exe
ModConst.exe
UDivConst.exe
UModConst.exe
div2.exet

Segmentation fault:

DblRoots.exe
Gcd.exe
Swap.exe

Bug fixing
There are a lot of remaining task and bugs. They will refer to the current task as far as possible.
cc @jkotas @MichalStrehovsky

@jkotas  is it possible to create group like dotnet/arm32-contrib  for involved people?

Compilation time for HelloWorld application is reduced from 25 minutes (on Samsung Z3) to 3 minutes on PC.

Are you using release (or at least checked) build of RyuJIT? It would not expect it to take this long.

This is awesome progress! Thank you for the update.
I have created @dotnet/arm32-corert-contrib . All of you are members except @BredPet who I am not able to add for some reason. I will work on it...

Thank you!
We use debug version because checked and release were unstable before. I will try it with checked version (or checked CoreCLR + cross RyuJIT with disabled optimizations).
It looks @BredPet isn't member of .Net Foundation.

It looks @BredPet isn't member of .Net Foundation.

Fixed.

I joined. And requested membership in @dotnet/arm32-corert-contrib.
@jkotas thanks

@jkotas Release version still doesn't work, -O of ILC compiler as well (but with different errors). But if I run  ILC on checked CoreCLR compilation of HelloWorld takes 35 sec on x86 host. And it's needed about 2 hours for compiling all BringUpTests.
Results of the tests are the same:
1 Failed on compilation
11 FAIL
146 SUCCESS

https://github.com/dotnet/corert/issues/4880

I've looked for API calls in Xamarine which could be problematic for CoreRT and have got results below. Checked Xamarin.Forms.Core.dll,  Xamarin.Forms.Platform.dll,  Xamarin.Forms.Platform.Tizen.dll,  Xamarin.Forms.Xaml.dll packages.
API calls: System.Reflection.*, System.Array::CreateInstance, System.Type::ReflectionOnlyGetType, System.Type::MakeGenericMethod, System.Type::MakeTypeArray, System.Type::GetType.
@jkotas what calls cannot be implemented in CoreRT (if there are such)? Is there any detailed list of API which cannot be implemented? I've looked to https://docs.microsoft.com/en-us/dotnet/framework/net-native/apis-that-rely-on-reflection is it complete?
Results:
# API from System.Reflection
51 call       class [System.Reflection]System.Reflection.TypeInfo [System.Reflection]System.Reflection.IntrospectionExtensions::GetTypeInfo()
34 callvirt   instance string [System.Reflection]System.Reflection.MemberInfo::get_Name()
27 callvirt   instance object [System.Reflection]System.Reflection.MethodBase::Invoke()
22 callvirt   instance class [System.Reflection]System.Reflection.ParameterInfo[] [System.Reflection]System.Reflection.MethodBase::GetParameters()
19 callvirt   instance class [System.Reflection]System.Reflection.MethodInfo [System.Reflection]System.Reflection.PropertyInfo::get_GetMethod()
14 callvirt   instance bool [System.Reflection]System.Reflection.MethodBase::get_IsPublic()
11 callvirt   instance class [System.Reflection]System.Reflection.Assembly [System.Reflection]System.Reflection.TypeInfo::get_Assembly()
 9 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.ParameterInfo::get_ParameterType()
 9 callvirt   instance class [System.Runtime]System.Collections.Generic.IList`1<valuetype [System.Reflection]System.Reflection.CustomAttributeTypedArgument> [System.Reflection]System.Reflection.CustomAttributeData::get_ConstructorArguments()
 8 callvirt   instance object [System.Reflection]System.Reflection.FieldInfo::GetValue()
 8 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.TypeInfo::get_BaseType()
 8 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.MemberInfo::get_DeclaringType()
 8 callvirt   instance bool [System.Reflection]System.Reflection.PropertyInfo::get_CanRead()
 8 callvirt   instance bool [System.Reflection]System.Reflection.MethodBase::get_IsStatic()
 8 call       class [System.Reflection]System.Reflection.FieldInfo [System.Reflection]System.Reflection.FieldInfo::GetFieldFromHandle()
 7 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.CustomAttributeData::get_AttributeType()
 7 callvirt   instance class [System.Reflection]System.Reflection.MethodInfo [System.Reflection]System.Reflection.PropertyInfo::get_SetMethod()
 6 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.PropertyInfo::get_PropertyType()
 6 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.MethodInfo::get_ReturnType()
 6 callvirt   instance class [System.Runtime]System.Collections.Generic.IEnumerable`1<class [System.Reflection]System.Reflection.CustomAttributeData> [System.Reflection]System.Reflection.ParameterInfo::get_CustomAttributes()
 6 callvirt   instance bool [System.Reflection]System.Reflection.TypeInfo::IsAssignableFrom()
 6 callvirt   instance bool [System.Reflection]System.Reflection.FieldInfo::get_IsStatic()
 5 callvirt   instance bool [System.Reflection]System.Reflection.TypeInfo::get_IsValueType()
 5 call       instance object [System.Reflection]System.Reflection.CustomAttributeTypedArgument::get_Value()
 4 callvirt   instance string [System.Reflection]System.Reflection.AssemblyName::get_Name()
 4 callvirt   instance class [System.Runtime]System.Collections.Generic.IEnumerable`1<class [System.Reflection]System.Reflection.ConstructorInfo> [System.Reflection]System.Reflection.TypeInfo::get_DeclaredConstructors()
 4 callvirt   instance bool [System.Reflection]System.Reflection.TypeInfo::get_IsGenericType()
 3 callvirt   instance void [System.Reflection]System.Reflection.EventInfo::AddEventHandler()
 3 callvirt   instance string [System.Reflection]System.Reflection.Assembly::get_FullName()
 3 callvirt   instance object [System.Reflection]System.Reflection.PropertyInfo::GetValue()
 3 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.EventInfo::get_EventHandlerType()
 3 callvirt   instance class [System.Runtime]System.Delegate [System.Reflection]System.Reflection.MethodInfo::CreateDelegate()
 3 callvirt   instance class [System.Runtime]System.Collections.Generic.IEnumerable`1<class [System.Reflection]System.Reflection.CustomAttributeData> [System.Reflection]System.Reflection.MemberInfo::get_CustomAttributes()
 3 callvirt   instance class [System.Reflection]System.Reflection.PropertyInfo [System.Reflection]System.Reflection.TypeInfo::GetDeclaredProperty()
 3 callvirt   instance class [System.Reflection]System.Reflection.MethodInfo [System.Reflection]System.Reflection.TypeInfo::GetDeclaredMethod()
 3 call       instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.CustomAttributeTypedArgument::get_ArgumentType()
 2 callvirt   instance string [System.Reflection]System.Reflection.ManifestResourceInfo::get_FileName()
 2 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.TypeInfo::GetGenericTypeDefinition()
 2 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.FieldInfo::get_FieldType()
 2 callvirt   instance class [System.IO]System.IO.Stream [System.Reflection]System.Reflection.Assembly::GetManifestResourceStream()
 2 callvirt   instance bool [System.Reflection]System.Reflection.PropertyInfo::get_CanWrite()
 2 callvirt   instance bool [System.Reflection]System.Reflection.MethodBase::get_IsSpecialName()
 2 callvirt   instance bool [System.Reflection]System.Reflection.FieldInfo::get_IsPublic()
 2 call       class [System.Reflection]System.Reflection.MethodBase [System.Reflection]System.Reflection.MethodBase::GetMethodFromHandle()
 1 callvirt   instance void [System.Reflection]System.Reflection.EventInfo::RemoveEventHandler()
 1 callvirt   instance string [System.Reflection]System.Reflection.AssemblyName::get_FullName()
 1 callvirt   instance string[] [System.Reflection]System.Reflection.Assembly::GetManifestResourceNames()
 1 callvirt   instance object [System.Reflection]System.Reflection.ConstructorInfo::Invoke()
 1 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.TypeInfo::GetElementType()
 1 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.TypeInfo::AsType()
 1 callvirt   instance class [System.Runtime]System.Type [System.Reflection]System.Reflection.Assembly::GetType()
 1 callvirt   instance class [System.Runtime]System.Collections.Generic.IEnumerable`1<class [System.Runtime]System.Type> [System.Reflection]System.Reflection.TypeInfo::get_ImplementedInterfaces()
 1 callvirt   instance class [System.Runtime]System.Collections.Generic.IEnumerable`1<class [System.Reflection]System.Reflection.PropertyInfo> [System.Reflection]System.Reflection.TypeInfo::get_DeclaredProperties()
 1 callvirt   instance class [System.Runtime]System.Collections.Generic.IEnumerable`1<class [System.Reflection]System.Reflection.FieldInfo> [System.Reflection]System.Reflection.TypeInfo::get_DeclaredFields()
 1 callvirt   instance class [System.Reflection]System.Reflection.TypeInfo [System.Reflection]System.Reflection.IReflectableType::GetTypeInfo()
 1 callvirt   instance class [System.Reflection]System.Reflection.ParameterInfo[] [System.Reflection]System.Reflection.PropertyInfo::GetIndexParameters()
 1 callvirt   instance class [System.Reflection]System.Reflection.Module [System.Reflection]System.Reflection.MemberInfo::get_Module()
 1 callvirt   instance class [System.Reflection]System.Reflection.ManifestResourceInfo [System.Reflection]System.Reflection.Assembly::GetManifestResourceInfo()
 1 callvirt   instance class [System.Reflection]System.Reflection.FieldInfo [System.Reflection]System.Reflection.TypeInfo::GetDeclaredField()
 1 callvirt   instance class [System.Reflection]System.Reflection.AssemblyName[] [System.Reflection]System.Reflection.Assembly::GetReferencedAssemblies()
 1 callvirt   instance bool [System.Reflection]System.Reflection.TypeInfo::get_IsEnum()
 1 callvirt   instance bool [System.Reflection]System.Reflection.TypeInfo::get_IsArray()
 1 callvirt   instance bool [System.Reflection]System.Reflection.MethodBase::get_IsPrivate()
 1 callvirt   instance bool [System.Reflection]System.Reflection.MethodBase::get_IsFamilyOrAssembly()
 1 callvirt   instance bool [System.Reflection]System.Reflection.MethodBase::get_IsFamily()
 1 callvirt   instance bool [System.Reflection]System.Reflection.MethodBase::get_IsAssembly()
 1 call       class [System.Reflection]System.Reflection.Assembly [System.Reflection]System.Reflection.Assembly::Load()

# All others calls
 4 call       class [System.Runtime]System.Type [System.Runtime]System.Type::GetType(string)
 1 call       class [System.Runtime]System.Array [System.Runtime]System.Array::CreateInstance()

I've looked to https://docs.microsoft.com/en-us/dotnet/framework/net-native/apis-that-rely-on-reflection is it complete?

This article explains the main problem with reflection in full AOT tree-shaked environment.
A more fine grained list is in https://github.com/dotnet/corefx/wiki/UWP-Compat#systemreflection , but the differences are corner cases that do not cause problems in practice.

@jkotas what calls cannot be implemented in CoreRT (if there are such)?

The trick with making reflection work is to make sure that whatever the program reflects on gets compiled into the final image. Currently, the CoreRT compiler has a simple logic to keep everything that is statically reachable from the Main method. It can be further customized by rdxml files (look for RdXmlRootProvider), or it is sometimes easier to add a dummy references to parts of the program that should be compiled in.
I know Xamarin stack uses custom attributes to opt-in things into reflection. We do not recognize these attributes in CoreRT yet. Check https://developer.xamarin.com/guides/ios/advanced_topics/linker/#Preserving_Code for details. If you run into cases like this, we can work together on figuring out the best way to recognize the Xamarin custom attributes in CoreRT compiler.

Thank you!
I'm looking for functionality which cannot work in CoreRT by design. As I understand some of these API could be implemented. Others could be handled by compiler or config files.
Thing I want to understand is there something which can prevent using CoreRT in real huge applications (which use Xamarin or other frameworks)?

The large missing features in CoreRT are dynamic loading (loading of binaries that were not seen by the compiler), and Reflection.Emit (it is really just a special case of dynamic loading).
There are ways how to make these features work in CoreRT - either by having interpreter, or by using JIT - but it would be a lot of work.

It looks Reflection.Emit  isn't used in Xamarin.
Another option for dynamic loading I think is distributing as precompiled binaries and open it with API like dlopen(). It should be easier than JIT.

Another option for dynamic loading I think is distributing as precompiled binaries and open it with API like dlopen(). It should be easier than JIT.

The hard part with this model is versioning (what builds are ok to mix). You typically want to allow mixing and matching of different builds, and doing that for managed code with full AOT is pretty hard because of fragile base class problem.

OK thank you. It's the same issues like CoreCLR's crossgen has, right?

Right, the FragileNonVersionable flavor of NGen images.

@jkotas we've reviewed opened issues. So I want to share tasks which are needed for stable work of CoreRT on ARM. Could you add another tasks if think that it's needed?

Critical (80: part 1/part 2)

C# logic
Attributes
Interoperability
Exceptions
Cross compilation
PAL

Debug[17]

ILVerify
DWARF debuginfo(types, vars)
Interpreter question

Reflection[16]

Metadata
Attributes
RD.XML behavior

Optimizations [25]:

Size on disk
Multi-threading compiler
Porting CLR features and optimizations(threading, enums parsing/formatting, etc...)
Jit-Helpers
Virtual slots

Also there are a lot of other remaining task like testing or build infrastructure. I'm interesting in unimplemented features, API and bugs first.

share tasks which are needed for stable work of CoreRT on ARM

Getting CoreRT to work great for everything is a ton of work - I do not think we have issues opened for all of it. I would help to define the scenario you want to go after first. I assume you want to target relatively simple Xamarin-forms based apps on Tizen. Is this correct? Once there is agreement on the scenarios, we can help you to come up with prioritized list of issues to work on to make it work great.

@jkotas right, we're focusing on Xamarin based applications from tutorials first.

For this, I think you should primarily work on these:

Cross-compilation
Debug info (DWARF): #783, #785
Reflection #5001. In particular, recognize the Mono AOT/reflection attributes if Xamarin forms are using them.
Testing, triaging failures, bug fixing:

CoreCLR tests first (https://github.com/dotnet/corert/blob/master/tests/runtest.sh#L9)
CoreFX tests once CoreCLR tests are stable enough. Opened #5059 on that.

@jkotas thank you!
We will update plans.

authors: BredPet alpencolt jkotas sergign60

repo: dotnet/corert


text:
ARM64: optimize PREPARE_EXTERNAL_VAR (#21)

There are multiple cases were we don't need just the pointer for an external variable but the value that is stored at this location.
So far this was done with the PREPARE_EXTERNAL_VAR followed by an ldr x? [x?]. The PREPARE_EXTERNAL_VAR macro needs two instructions (adrp + add). As the ldr instruction supports an offset we can eliminate the add for this use case. The two new macros PREPARE_EXTERNAL_VAR_INDIRECT and PREPARE_EXTERNAL_VAR_INDIRECT_W make use of this.

I know this might be some unnecessary over optimizing but if we already use assembler for these helpers saving some more cycles might not be worst we can do.


text:
Link to archive.msdn.microsoft.com does not work

The link on the first purple note (goes to http://archive.msdn.microsoft.com/wpfsamples) does not work.
Page:
https://docs.microsoft.com/en-us/dotnet/framework/wpf/advanced/advanced-text-formatting#advanced-text-formatting-1

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

ID: f86ab90b-662c-f6ef-9958-f7a27c0dfadb
Version Independent ID: 8da01b55-70f2-0f5e-5479-3d08c647af62
Content: Advanced Text Formatting
Content Source: docs/framework/wpf/advanced/advanced-text-formatting.md
Product: dotnet-framework
GitHub Login: @dotnet-bot
Microsoft Alias: dotnetcontent

It seems that now it is moved to GitHub: https://github.com/Microsoft/WPF-Samples

Thanks for the feedback @cjkeilig. I've changed the target link to go to https://github.com/Microsoft/WPF-Samples/tree/master/PerMonitorDPI/TextFormatting.

authors: Potapy4 cjkeilig mairaw

repo: dotnet/docs


text:
The use of data type "string?" in the examples seems very unnecessary

Correct me if I'm wrong, but I thought an ordinary "string" was already a reference type, which means it can already be assigned a value of null.  Therefore, the idea of a nullable "string?" in the examples is redundant, unnecessary, and confusing.
It only makes sense for value types like "int" or "bool" to be nullable as "int?" or "bool?", since the ordinary versions of those data types cannot be null.

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

ID: 042902cc-1598-5df1-34cc-caa0fad63e02
Version Independent ID: e186d0c4-523e-38f7-2cde-d00109ea784b
Content: using statement - C# Reference
Content Source: docs/csharp/language-reference/keywords/using-statement.md
Product: dotnet-csharp
Technology: csharp-language-reference
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Looks like they are using C# 8 nullable reference types in the example documentation, for details you can check: https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/nullable-reference-types

Thanks for asking this @matthew45052
We are using the new C# 8 nullable reference feature in that sample, as @jvandertil points out.
I'll close this as an answered question.

authors: BillWagner jvandertil matthew45052


text:
 xml doc topic doesn't mention the href attribute

The syntax on the topic only shows <see cref="member"/> but not the see href syntax:
<see href="url">link text</see>
edit: added topic details

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

ID: 7c9f2f59-0dec-c531-b19a-a2109ea0f973
Version Independent ID: 74c6022c-8661-216e-4f48-e5f08f432f85
Content: <see> - C# Programming Guide
Content Source: docs/csharp/programming-guide/xmldoc/see.md
Product: dotnet-csharp
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

From my experimentation, it looks like VS supports langword (it is offered as completion, it has its own completion list and it is displayed nicely in QuickInfo).
For href, there doesn't seem to be any support at the moment (C#/VB compilers or VS). If other tools support it, then we should file a request in Roslyn repo to support in IDE).

Do we know anything about how much usage Doxygen and Sandcastle each get?
I am a bit hesitant to include a feature that will be ignored by some tools.

Do we know anything about how much usage Doxygen and Sandcastle each get?

No, and I'm not sure how we could get reliable info on their usage.

Moving this to the backlog until this is officially supported in VS. /cc @BillWagner

fyi, DocFX also supports <see href="">.
For example,
/// See <see href="https://github.com/dotnet/docs/issues/4176">issue #4176</see>.

...renders as:

@mairaw @BillWagner any updates on fixing the support for this or the documentation?

It would be great to make the support for href attribute in <see href=""/> tag official.

href isn't an officially supported attribute, but many tools support it anyway.

I too would very much like to see this incorporated. For reference for anyone else coming across this issue, here's the related issues https://github.com/dotnet/csharplang/issues/1764 and https://github.com/dotnet/roslyn/issues/25671

reopening to address as part of the XML doc cleanup

authors: BillWagner KathleenDollard erichiller jcouv jozefizso mairaw mfaux michael-hawker sharwell


text:
Typo

Last sentence in introduction of Remarks section: "Then you can add child elements that define the resources, each with an value."
You may think to fix this by changing "an" to "a," but I suspect there's a missing word and I don't know what it's supposed to be.

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

ID: 199e0c6e-18c6-b2e4-3335-dff64f564cc0
Version Independent ID: af481a26-f252-b0e6-926e-fdf6f831cff9
Content: ResourceDictionary Class (System.Windows)
Content Source: xml/System.Windows/ResourceDictionary.xml
Service: unspecified
Product: .net
GitHub Login: @dotnet-bot
Microsoft Alias: dotnetcontent

Thanks for your feedback, @TharosTheDragon. Your surmise that the "an" was correct because text had dropped out of the documentation turns out to be correct. The original text was "an [x:key](https://docs.microsoft.com/en-us/dotnet/framework/xaml-services/x-key-directive)". We've opened a PR to address this issue.

authors: TharosTheDragon rpetrusha


text:
Conflicting documentation

Under the ADO.NET Asynchronous Programming topic, it states
"Beginning in the .NET Framework 4.5, these methods no longer require Asynchronous Processing=true in the connection string.".
Is this statement directed toward only the legacy BeginExecute_____ methods or does it include the new async methods?

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

ID: 187f434e-673a-4955-9cd4-73908eb0be8a
Version Independent ID: 75484462-a041-9ae8-4134-954ede1ab85a
Content: SqlConnectionStringBuilder.AsynchronousProcessing Property (System.Data.SqlClient)
Content Source: xml/System.Data.SqlClient/SqlConnectionStringBuilder.xml
Product: dotnet-api
GitHub Login: @douglaslMS
Microsoft Alias: douglasl

@reavill-d Thanks for your question. As implied by the location and phrasing of the "no longer required" statement, it's the legacy Begin... methods that no longer require Asynchronous Processing=true in the connection string. The new async methods don't and have never needed it. I'll see whether we can make this clearer. The Asynchronous Programming page contains quite a number of samples for the new async methods in which the connection string doesn't include this parameter, so if nothing else it's clear from the examples.

@reavill-d BTW sorry for the delay in responding! Your question came in while I was on vacation, and I overlooked it.

#please-close

authors: douglaslMS reavill-d


text:
Fix the namespaces on a sample

Summary
Most of the work in this one is in the
Fixes #12434
Related to dotnet/samples#937

Verified the code example is there. Woohoo!


text:
Update naming-rules.md

After two days of fruitless effort in trying to parse and understand what this document is trying to say, I've given up and rewritten it.

The excess verbiage obscures the underlying syntax of prefix.title.propertyName = value.
The difference between "setting a property on a symbol group / naming style" and "setting the symbol group / naming style on the naming rule" is not sufficiently clear. (At least, I missed it even after I'd gone over the page multiple times.)
This isn't a straightforward How To document, so having a separate heading + paragraph of verbiage for each property doesn't make sense.

Summary

Properties are now in tables, one table for each element type -- naming rule, symbol group, or naming style.
Added a "General syntax" section, describing the underlying syntax of setting properties on elements related to naming rules.
Folds some of the smaller headers into other sections.

@gewarren Thanks for looking over this so quickly. I've finished going over the suggestions.

@mavasani Do you or someone else want to look over this reformatted doc? https://review.docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/style-rules/naming-rules?branch=pr-en-us-21470

I believe @mikadumont is probably the best person to review this.

@gewarren that looks good to me. I think we should consider adding every naming rule option in the example from here - https://github.com/dotnet/roslyn/blob/master/.editorconfig#L63

@mikadumont

I think we should consider adding every naming rule option in the example from here - https://github.com/dotnet/roslyn/blob/master/.editorconfig#L63

Why? The linked code conventions are the ones defined and used by the Roslyn project. If someone wants to define their own coding conventions in their own project -- the subject of this document -- how would the Roslyn conventions help them?
AFAICT the only value would be as an extended example of how to implement conventions, but for that purpose I think a link would suffice.

@mikadumont

I think we should consider adding every naming rule option in the example from here - https://github.com/dotnet/roslyn/blob/master/.editorconfig#L63

Why? The linked code conventions are the ones defined and used by the Roslyn project. If someone wants to define their own coding conventions in their own project -- the subject of this document -- how would the Roslyn conventions help them?
AFAICT the only value would be as an extended example of how to implement conventions, but for that purpose I think a link would suffice.

I think there is value to show every option but leave the value unopinionated and leave as  .

I think what I'm trying to say is, there isn't anything special about the Roslyn project conventions (other than "the conventions for what is perhaps the largest .NET project in the world").
It's certainly important to know that for a symbol group, you can set applicable_kinds and applicable_accessibilities, while for a naming style you can set required_suffix and you must set captialization -- precisely what this document is supposed to describe.
But that it's possible to specify a naming rule called instance_fields_should_be_camel_case by setting its' naming rule properties; or a symbol group called instance_fields and setting its' symbol group properties? The names themselves have no special meaning; they could be called foo and bar; it is the property values which give meaning to the definitions.

I think what I'm trying to say is, there isn't anything special about the Roslyn project conventions (other than "the conventions for what is perhaps the largest .NET project in the world").
It's certainly important to know that for a symbol group, you can set applicable_kinds and applicable_accessibilities, while for a naming style you can set required_suffix and you must set captialization -- precisely what this document is supposed to describe.
But that it's possible to specify a naming rule called instance_fields_should_be_camel_case by setting its' naming rule properties; or a symbol group called instance_fields by setting its' symbol group properties? The names themselves have no special meaning; they could be called foo and bar; it is the property values which give meaning to the definitions.
By analogy, there's no need to illustrate C# conceptual concepts with code specifically from the Roslyn compiler.

You are right and can provide a confusing experience.

authors: gewarren mavasani mikadumont zspitz


text:
Auto Language Detection

Is your feature request related to a problem? Please describe.
Each time you a new cell is created, the language for that cell has to be explicitly stated. By default, it will either be set to the global language for the notebook, or it will be set to the language of the previous cell. However, every time users want to change languages, they will have to go to the language picker to make the selection. Sometimes they might forget to change the language and get an error on cell run before realizing they need to update the language selection.
Describe the solution you'd like
In an ideal experience, polyglot notebooks will be able to detect based on syntax what language the user is coding in, and automatically update the language dropdown accordingly. The user will always have the option to overriding, but autodetection will lessen the burden of switching languages.

@TylerLeonhardt you did some work similar to this at the editor level right? Could it be reapplied at the cell level in notebooks?

Do you see this Auto-Detect option? It should work for you

@TylerLeonhardt yes that shows up there however the polyglot notebooks extension has two controls. The one you selected which differentiates between markdown and code, and the second that actually differentiates between language/environment/data connection.
In the screenshot below, you'll see the "code" option and then the option to its left where the language/environment/data connection is so while autodetection shows up in the list it doesn't quite work yet for polyglot notebooks.

@sharoncxu one thing to keep in mind is that the "language picker" we created isn't always a language. It can be an alias for a sql connection, an alias for a kusto connection, or in the future a python kernel, R kernel, python env etc. If a user has multiple sql connections and they start typing SQL code in a new cell, which one would you expect to automatically connect to? Should anything be added to provide more clarity here?

I see. There isn't an API to auto-detect the language, but the implementation does exist here:
https://github.com/microsoft/vscode-languagedetection
It supports most of the languages you've listed except for kql & mermaid... and since the model is local, the package is a decent size.
All-in-all, I'm not sure it's going to do well for your scenario... esp since you mentioned that it won't always be a language.

All-in-all, I'm not sure it's going to do well for your scenario... esp since you mentioned that it won't always be just a language.

In a significant majority of cases we'll be able to infer a kernel name from the detected language, since the notebook file metadata provides a mapping between these and having multiple subkernels for the same language will be less common.
Does the proposal raise other concerns or questions that we should be aware of?

The model that we used for that runs locally... which is great, but, it does take a pretty good amount of code to actually make an accurate guess.
With that said, you can run that project as a CLI so maybe put a few code cells of yours through that to see if the results are good enough.

Yeah I suggested the CLI as means for testing locally. The docs of the repo tell you how to use it.

authors: TylerLeonhardt claudiaregio jonsequitur sharoncxu

repo: dotnet/interactive


text:
When does VSCode extension no longer need insiders version?

Is your feature request related to a problem? Please describe.
No.
Describe the solution you'd like
I want to use this without insiders version vscode.

This will depend on the timeline for VS Code notebooks: https://code.visualstudio.com/api/extension-guides/notebook.

The Polyglot Notebooks extension (formerly .NET Interactive Notebooks) is available in VS Code stable

authors: GF-Huang claudiaregio jonsequitur


text:
Only the last three lines of code displays in the cell after copied and pasted multiple lines of code to Notebook file.

System Information (please complete the following information):

Microsoft Visual Studio Enterprise 2022 Preview: 17.0.0 Preview 5.0
ML.Net Model Builder: 16.8.3.2151403 (Main Branch)
Notebook Editor [Preview]: 0.2.1.2151402

Describe the bug

On which step of the process did you run into an issue: copy and paste multiple lines of code to the cell
Clear description of the problem: To view all codes for the first time, you can only use the up arrow on the keyboard to point up one by one.

To Reproduce
Steps to reproduce the behavior:

Select Create a new project from the Visual Studio 2022 start window;
Choose the C# Console App (.NET Core) project template with .Net 5.0;
Right click the ConsoleApp project>Add>New Item...>Notebook;
Copied and pasted multiple lines of code to a cell, find that only the last three lines code displays in the cell, and if you want to view all codes, only can use the up arrow on the keyboard.

Expected behavior
Display all codes in the cell.
Screenshots
If applicable, add screenshots to help explain your problem.

This issue has been fixed on Notebook Editor [Preview]: 0.2.1.2151510

repo: dotnet/machinelearning-modelbuilder


text:
DocumentVersionCache should use circular (or ring) buffers

DocumentVersionCache caps the number of IDocumentSnapshot versions that are tracked for a particular document file path at 20. There are a couple of improvements that can be made to this part of the implementation:

It holds the IDocumentSnapshot instances in weak references but never makes any attempt to clean out expired references. So, it will continue to store snapshots (up to 20), even if there are expired entries.
The snapshots are stored in a List<T>. Once 20 snapshots have been cached, future snapshots result in RemoveAt(0) being called, which results in an array copy for every future snapshot. This could be alleviated by using a different structure, such as a circular buffer.

The class in question was removed in https://github.com/dotnet/razor/pull/10747

authors: DustinCampbell davidwengier

repo: dotnet/razor


text:
Support ContainerEnvironmentVariables

Fixes https://github.com/dotnet/sdk-container-builds/issues/179
TODO

[x] Test loading from a config file
[x] Create tests
[x] Pass ContainerEnvironmentVariable to ParseContainerProperties
[x] Implement environment variable validation in the task
[x] Pass from ParseContainerProperties to CreateNewImage
[x] Add parameters in both CreateNewImage tasks.
[x] Implement env var setting in both CreateNewImage

Note to self: docs link https://github.com/opencontainers/image-spec/blob/main/config.md

This one's new. Something new about the web template? I'm confused about what could have changed here.
C:\Program Files\Microsoft Visual Studio\2022\Dogfood>docker run localhost:5010/endtoend_noapi:1.0
Unhandled exception. System.InvalidOperationException: Unable to configure HTTPS endpoint. No server certificate was specified, and the default developer certificate could not be found or is out of date.
To generate a developer certificate run 'dotnet dev-certs https'. To trust the certificate (Windows and macOS only) run 'dotnet dev-certs https --trust'.
For more information on configuring HTTPS see https://go.microsoft.com/fwlink/?linkid=848054.
   at Microsoft.AspNetCore.Hosting.ListenOptionsHttpsExtensions.UseHttps(ListenOptions listenOptions, Action`1 configureOptions)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(IEnumerable`1 listenOptions, AddressBindContext context, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication`1 application, CancellationToken cancellationToken)
   at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)
   at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.Run(IHost host)
   at Program.<Main>$(String[] args) in C:\Users\bevillal\AppData\Local\Temp\CreateNewImageTest\Program.cs:line 25

Turns out it was the default value we were setting ASPNETCORE_URLS to...
I stole the value it is set to by default: http://+:80, cc @baronfel

Cleaned up the commit history, should be ready to merge. Un-drafting

repo: dotnet/sdk-container-builds