sysmon latest version does not work with the Sysmonparser

Describe the bug
eventID 3 is not being parsed via the parser. I have noticed that the current version of sysmon with schema version 4.22 does not work.
To Reproduce
search for sysmon event id 3 without using the parser
Event
| where Source contains "sysmon"
| where EventID == 3
the events shows up as expected, so we know the data is being captured by sysmon and send to azure sentinel workspace correctly.

doing the same search with the parser function

Expected behavior
eventID 3 data should show up
using the parser with other eventID's does show data ex below

so after some experimentation this now yields data for event id 3, i can not really see why this works ? ill make a compare tomorrow of the eventID3 section of the parser and this.
let EventData = Event
| where Source contains "Sysmon"
| extend RenderedDescription = tostring(split(RenderedDescription, ":")[0])
| project TimeGenerated, Source, EventID, Computer, UserName, EventData, RenderedDescription
| extend EvData = parse_xml(EventData)
| extend EventDetail = EvData.DataItem.EventData.Data
| project-away EventData, EvData
;
let SysmonEvent1_ProcessCreate=() {
let processEvents = EventData
| where EventID == 3
| extend RuleName = EventDetail.[0].["#text"], UtcTime = EventDetail.[1].["#text"], ProcessGuid = EventDetail.[2].["#text"], ProcessId = EventDetail.[3].["#text"], Image = EventDetail.[4].["#text"],
User = EventDetail.[5].["#text"], Protocol = EventDetail.[6].["#text"], Initiated = EventDetail.[7].["#text"], SourceIsIpv6 = EventDetail.[8].["#text"], SourceIp = EventDetail.[9].["#text"],
SourceHostname = EventDetail.[10].["#text"], SourcePort = EventDetail.[11].["#text"], SourcePortName = EventDetail.[12].["#text"], DestinationIsIpv6 = EventDetail.[13].["#text"],
DestinationIp = EventDetail.[14].["#text"], DestinationHostname = EventDetail.[15].["#text"], DestinationPort = EventDetail.[16].["#text"], DestinationPortName = EventDetail.[17].["#text"]
| parse RuleName with * 'technique_id=' TechniqueId ',' * 'technique_name=' TechniqueName
| project-away EventDetail, RuleName
;
processEvents;
};
(union isfuzzy=true
SysmonEvent1_ProcessCreate,SysmonEvent2_FileCreateTime,SysmonEvent3_NetworkConnect,SysmonEvent4_ServiceStateChange,SysmonEvent5_ProcessTerminate,
SysmonEvent6_DriverLoad,SysmonEvent7_ImageLoad,SysmonEvent8_CreateRemoteThread,SysmonEvent9_RawAccessRead,SysmonEvent10_ProcessAccess,
SysmonEvent11_FileCreate,SysmonEvent12_RegistryObjectAddDel,SysmonEvent13_RegistrySetValue,SysmonEvent14_RegistryObjectRename,
SysmonEvent15_FileCreateStreamHash,SysmonEvent16_ConfigChange,SysmonEvent17_CreateNamedPipe,SysmonEvent18_ConnectNamedPipe,
SysmonEvent19_WMIEventFilter,SysmonEvent20_WMIEventConsumer,SysmonEvent21_WMIEventConsumerToFilter)
| project TimeGenerated,Source,EventID,RenderedDescription,UtcTime,ProcessGuid,ProcessId,Image,User,Protocol,SourceIsIpv6,SourceHostname,Initiated,SourceIp,SourcePort,DestinationHostname,DestinationIp,DestinationPort,DestinationPortName,TechniqueId,TechniqueName

there is also an issue with EventID 7, here the hashes are not being parsed / handled correctly

reguarding eventID3
this yield the data i would expect
let SysmonEvent3_NetworkConnect=() {
let processEvents = EventData
| where EventID == 3
| extend rule_name = EventDetail.[0].["#text"], event_creation_time = EventDetail.[1].["#text"], process_guid = EventDetail.[2].["#text"], process_id = EventDetail.[3].["#text"], process_path = EventDetail.[4].["#text"],
user_name = EventDetail.[5].["#text"], network_protocol = EventDetail.[6].["#text"], network_connection_initiated = EventDetail.[7].["#text"], src_is_ipv6 = EventDetail.[8].["#text"], src_ip = EventDetail.[9].["#text"],
src_host_name = EventDetail.[10].["#text"], src_port = EventDetail.[11].["#text"], src_port_name = EventDetail.[12].["#text"], dst_is_ipv6 = EventDetail.[13].["#text"],
dst_ip = EventDetail.[14].["#text"], dst_host_name = EventDetail.[15].["#text"], dst_port = EventDetail.[16].["#text"], dst_port_name = EventDetail.[17].["#text"]
| parse rule_name with * 'technique_id=' technique_id ',' * 'technique_name=' technique_name ',' * 'phase_name=' phase_name
| project-away EventDetail, rule_name
;

Thanks for reporting the bug for sysmon parser. It seems parser had an extra statement for parsing Hashes but since EventID 3 do not have it , it was failing to parse. I have submitted bugfix with the change in Pull Request #389.
Regarding Event ID 7:
Can you paste sample records (EventData column) for Event Id 7. You can remove any sensitive details such as IP, computer name etc.
Screenshot you provided have different schema than in parser file so i can not verify how it is failing.  Having sample source data will help us in testing the parser logic  and fix as required.

Will do :-)

hi here is the data
EventData | <DataItem type="System.XmlData" time="2019-11-26T09:57:57.9094107+01:00" sourceHealthServiceId="215A6DEA-9F44-63F3-7A0A-5A10B1A18F16"><EventData xmlns="http://schemas.microsoft.com/win/2004/08/events/event"><Data Name="RuleName">Defense Evasion - Unmanaged PowerShell Detected</Data><Data Name="UtcTime">2019-11-26 08:57:57.890</Data><Data Name="ProcessGuid">{75F25E05-E915-5DDC-0000-00106814313B}</Data><Data Name="ProcessId">3784</Data><Data Name="Image">C:\Program Files\Microsoft Monitoring Agent\Agent\MonitoringHost.exe</Data><Data Name="ImageLoaded">C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Manaa57fc8cc#\f9fd1c4197933e588a190dfc61a257f6\System.Management.Automation.ni.dll</Data><Data Name="FileVersion">10.0.14393.3053</Data><Data Name="Description">System.Management.Automation</Data><Data Name="Product">Microsoft (R) Windows (R) Operating System</Data><Data Name="Company">Microsoft Corporation</Data><Data Name="OriginalFileName">System.Management.Automation.dll</Data><Data Name="Hashes">SHA1=0AA76356A7A419D85FC3BA33361EC76D97598159,MD5=E5F2E0D35CF2289BF3F6E67ED1FA20CA,SHA256=D294C1685BC9BE4F49C877884D453420A10A0AFD8ABBF40EDE968866EB45EFEB,IMPHASH=00000000000000000000000000000000</Data><Data Name="Signed">false</Data><Data Name="Signature"></Data><Data Name="SignatureStatus">Unavailable</Data></EventData></DataItem>
-- | -
```-

here is what it looks like (currently) from going through the parser

TimeGenerated [UTC] 2019-11-26T08:57:57.91Z
Source Microsoft-Windows-Sysmon
EventID 7
Computer XXXXXX.XX.local
UserName NT AUTHORITY\SYSTEM
RenderedDescription Image loaded
event_creation_time 2019-11-26T08:57:57.8900000Z
process_guid {75F25E05-E915-5DDC-0000-00106814313B}
process_id 3784
process_path C:\Program Files\Microsoft Monitoring Agent\Agent\MonitoringHost.exe
file_version 10.0.14393.3053
file_description System.Management.Automation
file_product Microsoft (R) Windows (R) Operating System
file_company Microsoft Corporation
Hashes System.Management.Automation.dll <- WRONG
module_loaded C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Manaa57fc8cc#\f9fd1c4197933e588a190dfc61a257f6\System.Management.Automation.ni.dll <- WRONG - i think should be privious data field (ie the name of the dll)
module_is_signed SHA1=0AA76356A7A419D85FC3BA33361EC76D97598159,MD5=E5F2E0D35CF2289BF3F6E67ED1FA20CA,
SHA256=D294C1685BC9BE4F49C877884D453420A10A0AFD8ABBF40EDE968866EB45EFEB,
IMPHASH=00000000000000000000000000000000 WRONG should be split into seperate fields ie, hashes = SHA256 field name and then the hash value of each hash
module_signature false WRONG should be in the "module_is_signed" field

i hope this helps.

once we get it working i i'll get started on amending it to fix OSSEM standard to work with the blue-team sentinel attack setup.

as a suggestion going forward i suggest you have the sysmon version that works with the parser available for download on this github or ensure coordination with the sysmon people have an archive available for older version to download ;)

Thanks for providing the sample data. I will update PR to include original_file_name field which was missing in the parser.
Also, we have already connected with sysmon team and they have plans to generate kql parser via sysmon commandline option to make it convenient. This is on the roadmap until then we can use this parser file.
You can also test below query directly in Sentinel with the sample data you provided to see events post parsing.
let EventID7 = datatable(EventData:string)
[
@'<DataItem type="System.XmlData" time="2019-11-26T09:57:57.9094107+01:00" sourceHealthServiceId="215A6DEA-9F44-63F3-7A0A-5A10B1A18F16"><EventData xmlns="http://schemas.microsoft.com/win/2004/08/events/event"><Data Name="RuleName">Defense Evasion - Unmanaged PowerShell Detected</Data><Data Name="UtcTime">2019-11-26 08:57:57.890</Data><Data Name="ProcessGuid">{75F25E05-E915-5DDC-0000-00106814313B}</Data><Data Name="ProcessId">3784</Data><Data Name="Image">C:\Program Files\Microsoft Monitoring Agent\Agent\MonitoringHost.exe</Data><Data Name="ImageLoaded">C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Manaa57fc8cc#\f9fd1c4197933e588a190dfc61a257f6\System.Management.Automation.ni.dll</Data><Data Name="FileVersion">10.0.14393.3053</Data><Data Name="Description">System.Management.Automation</Data><Data Name="Product">Microsoft (R) Windows (R) Operating System</Data><Data Name="Company">Microsoft Corporation</Data><Data Name="OriginalFileName">System.Management.Automation.dll</Data><Data Name="Hashes">SHA1=0AA76356A7A419D85FC3BA33361EC76D97598159,MD5=E5F2E0D35CF2289BF3F6E67ED1FA20CA,SHA256=D294C1685BC9BE4F49C877884D453420A10A0AFD8ABBF40EDE968866EB45EFEB,IMPHASH=00000000000000000000000000000000</Data><Data Name="Signed">false</Data><Data Name="Signature"></Data><Data Name="SignatureStatus">Unavailable</Data></EventData></DataItem>'
];
EventID7
| extend EvData = parse_xml(EventData)
| extend EventDetail = EvData.DataItem.EventData.Data
| extend RuleName = EventDetail.[0].["#text"], UtcTime = EventDetail.[1].["#text"], ProcessGuid = EventDetail.[2].["#text"], ProcessId = EventDetail.[3].["#text"], Image = EventDetail.[4].["#text"],
ImageLoaded = EventDetail.[5].["#text"], FileVersion = EventDetail.[6].["#text"], Description = EventDetail.[7].["#text"], Product = EventDetail.[8].["#text"], Company = EventDetail.[9].["#text"], OriginalFileName = EventDetail.[10].["#text"],
Hashes = EventDetail.[11].["#text"], Signed = EventDetail.[12].["#text"], Signature = EventDetail.[13].["#text"], SignatureStatus = EventDetail.[14].["#text"]
| parse RuleName with * 'technique_id=' TechniqueId ',' * 'technique_name=' TechniqueName
| parse Hashes with * 'SHA1=' SHA1 ',' * 'MD5=' MD5 ',' * 'SHA256=' SHA256 ',' * 'IMPHASH=' IMPHASH
| project-away EventDetail, RuleName

perfectly

this opens the door to MISP implementation etc thanks for the quick response, really looking forward to the sysmon integration.

hate say it but i think you need to take a look at eventID1 too.
TimeGenerated [UTC] | 2019-11-26T19:02:40.233Z
-- | --
  | Source | Microsoft-Windows-Sysmon
  | EventID | 1
  | Computer | XXXXXXXX
  | UserName | NT AUTHORITY\SYSTEM
  | RenderedDescription | Process Create
  | event_creation_time | 2019-11-26T19:02:40.2110000Z
  | process_guid | {29477D06-76D0-5DDD-0200-00107E8526A1}
  | process_id | 60620
  | process_path | C:\Program Files\Microsoft Monitoring Agent\Agent\MonitoringHost.exe
  | file_version | 8.0.13053.0
  | file_description | System Center Management Service Host Process
  | file_product | Microsoft Monitoring Agent
  | file_company | Microsoft Corp.
  | process_commandline | MonitoringHost.exe
  | file_directory | "C:\Program Files\Microsoft Monitoring Agent\Agent\MonitoringHost.exe" -Embedding
  | user_name | C:\windows\system32\
  | user_logon_guid | NT AUTHORITY\SYSTEM
  | user_logon_id | {29477D06-3031-5DB1-0000-0020E7030000}
  | user_session_id | 0x3e7
  | process_integrity_level | 0
  | process_parent_guid | SHA1=6D455AAD1244C2D38B5257912756A1570D927516,MD5=2F45C5F52413FC1582D6BC6A81325A28,SHA256=29A34A3E57DB191A35DAA5A9003127EA2328077B5AFEFB2398C330CBDC484B09,IMPHASH=A7E16841131DA3DC3562014BB1AE5F68
  | process_parent_id | {29477D06-3031-5DB1-0000-0010EC810000}
  | process_parent_path | 940
  | process_parent_command_line | C:\Windows\System32\svchost.exe

seems the hashes does not get handled correctly here too

I am in-fact currently generating samples for each eventId and checking against the parser event field schema in test lab. I will do review for all and submit changes accordingly to parser by early next week.

ok thanks just redid the test you send for eventID 1 to confirm - cool let me know if there is anything i can do on my end and thanks for the quick response. I suppose the blue-team attacking the sentinel will have to update the  OSSEM conform paser as well once this is fixed. ;o)

Yeah. i will submit same changes to sentinel-attack repo as well post testing and review.
Thank you and feel free to continue reporting any issues you see with the parser.

Just to close on this, we will be producing versioned parsers so that as sysmon changes with different event schemas we will still have the parser available.  Ashwin will be working on completing that this week.

This is now fixed and commited to master via this PR - https://github.com/Azure/Azure-Sentinel/pull/389


Convert Binary Operator StringConcat to Function for array_concat, array_append and array_prepend

Which issue does this PR close?

Part of https://github.com/apache/arrow-datafusion/issues/8506
Rationale for this change

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

Thank you for this @jayzhan211  -- I plan to review it carefully tomorrow

cargo test (win64) has been run over 1hr ... Since cargo test (mac)  pass, I think that is some bug in CI.

cargo test (win64) has been run over 1hr ... Since cargo test (mac) pass, I think that may be a bug in CI.

I think @Jefffrey  noticed the same thing here: https://github.com/apache/arrow-datafusion/issues/8696

They eventually have the similar analyzer_internal. I tried to create a common function for them but failed to come out a nicer code.

cc @Veeupup  as I think you were working on something similar

Thanks again @jayzhan211


TCP error

It was working fine yesterday,but today it had tcp error problem.
Oct 04 08:06:41 localhost systemd[1]: Started Hysteria Server Service (config.yaml).
Oct 04 08:06:41 localhost hysteria[3504]: 2023-10-04T08:06:41+08:00        INFO        server mode
Oct 04 08:06:41 localhost hysteria[3504]: 2023-10-04T08:06:41+08:00        INFO        server up and running
Oct 04 08:06:56 localhost hysteria[3504]: 2023-10-04T08:06:56+08:00        INFO        client connected        {"addr": "<IP_ADDRESS>:23061", "id": "user", "tx": 39321600}
Oct 04 08:07:36 localhost hysteria[3504]: 2023-10-04T08:07:36+08:00        ERROR        TCP error        {"addr": "<IP_ADDRESS>:23061", "id": "user", "reqAddr": "abcgames.com:443", "error": "resolve error: lookup abcgames.com on <IP_ADDRESS>:53: read udp x.x.x.x:36026-><IP_ADDRESS>:53: i/o timeout"}
Oct 04 08:07:57 localhost hysteria[3504]: 2023-10-04T08:07:57+08:00        ERROR        TCP error        {"addr": "<IP_ADDRESS>:23061", "id": "user", "reqAddr": "abcgames.com:443", "error": "resolve error: lookup abcgames.com on <IP_ADDRESS>:53: read udp x.x.x.x:57206-><IP_ADDRESS>:53: i/o timeout"}
Oct 04 08:08:18 localhost hysteria[3504]: 2023-10-04T08:08:18+08:00        ERROR        TCP error        {"addr": "<IP_ADDRESS>:23061", "id": "user", "reqAddr": "abcgames.com:443", "error": "resolve error: lookup abcgames.com on <IP_ADDRESS>:53: read udp x.x.x.x:47919-><IP_ADDRESS>:53: i/o timeout"}
Oct 04 08:08:38 localhost hysteria[3504]: 2023-10-04T08:08:38+08:00        ERROR        TCP error        {"addr": "<IP_ADDRESS>:23061", "id": "user", "reqAddr": "abcgames.com:443", "error": "resolve error: lookup abcgames.com on <IP_ADDRESS>:53: read udp x.x.x.x:35978-><IP_ADDRESS>:53: i/o timeout"}
Oct 04 08:09:04 localhost hysteria[3504]: 2023-10-04T08:09:04+08:00        ERROR        TCP error        {"addr": "<IP_ADDRESS>:23061", "id": "user", "reqAddr": "contile-images.services.mozilla.com:443", "error": "resolve error: lookup contile-images.services.mozilla.com on <IP_ADDRESS>:53: read udp x.x.x.x:36590-><IP_ADDRESS>:53: i/o timeout"}
Oct 04 08:09:24 localhost hysteria[3504]: 2023-10-04T08:09:24+08:00        ERROR        TCP error        {"addr": "<IP_ADDRESS>:23061", "id": "user", "reqAddr": "contile-images.services.mozilla.com:443", "error": "resolve error: lookup contile-images.services.mozilla.com on <IP_ADDRESS>:53: read udp x.x.x.x:42285-><IP_ADDRESS>:53: i/o timeout"}

What the hell, it works again. So confused.

This simply means the DNS server you were using was down. Not a bug.


added a new contributor file

@Abhishek-kumar09  adding new file in the contributors section, which contains my info as a contributor.


Mission Report (Feature Layer) description is for web map

@ScottCecilio The description for "Mission Report (Feature Layer) id:d78f22ee0b5e454588b9a0883cfd8d22" indicates that this is a web map and not a feature service. Can you update?

I do not own this anymore,  can you reassign so I can provide clarification?

I do not see this item any more. Is this issue still valid @ScottCecilio or @lfunkhouser

https://nsec.esri.com/arcgis/home/item.html?id=b0d5bd4b97d34882adfbae9def6cc309
I need a feature service for Land Operations and not map service.  As long as the feature servic, https://nsec.esri.com/arcgis/home/item.html?id=d78f22ee0b5e454588b9a0883cfd8d22, then I will be good to go.

Item id:d78f22ee0b5e454588b9a0883cfd8d22 was not released yet.
@lfunkhouser this item is shared with demo review.

#1212 depends on this issue

Released by Demo Military

Verified


border-radius causes 'Cannot read property '0' of undefined' when used with :after

Test Case:
.test:after {
  border-radius: 20% / 100%;
}

test case works needs more investigation.


xtitle: 0.3 -> 0.4.3

Semi-automatic update. These checks were performed:

built on NixOS
ran /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin/xtitle -h got 0 exit code
ran /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin/xtitle --help got 0 exit code
ran /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin/xtitle -v and found version 0.4.3
ran /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin/xtitle --version and found version 0.4.3
ran /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin/xtitle --help and found version 0.4.3
found 0.4.3 with grep in /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3
found 0.4.3 in filename of file in /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3

cc "@meisternu"

Failure on x86_64-darwin (full log)
Partial log (click to expand)
Package ‘xtitle-0.4.3’ in /Users/graham/nix-borg/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/grahamc-ndnd/pkgs/tools/misc/xtitle/default.nix:17 is not supported on ‘x86_64-darwin’, refusing to evaluate.

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowBroken = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Partial log (click to expand)
mkdir -p "/nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin"
cp -p xtitle "/nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin"
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3
shrinking /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin/xtitle
strip is /nix/store/b0zlxla7dmy1iwc3g459rjznx59797xy-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3/bin
patching script interpreter paths in /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3
checking for references to /tmp/nix-build-xtitle-0.4.3.drv-0 in /nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3...
/nix/store/pxkzrgjcbd0ppv4xgnwml53xaswbb899-xtitle-0.4.3

Success on aarch64-linux (full log)
Partial log (click to expand)
mkdir -p "/nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3/bin"
cp -p xtitle "/nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3/bin"
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3
shrinking /nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3/bin/xtitle
strip is /nix/store/lvx1acn1ig1j2km8jds5x3ggh3f2wa8v-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3/bin
patching script interpreter paths in /nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3
checking for references to /build in /nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3...
/nix/store/xx1pcm9w863qf988i4f0cwzj8gk872wn-xtitle-0.4.3


Geogrid module

Checked for duplicates
Yes - I've already checked
Alternatives considered
Yes - and alternatives don't suffice
Related problems
Geogrid module needs to be tested in more general cases
Describe the feature request
I need or want [...]

This issue has been resolved by this commit.


can not load such file googleauth

When I am installing fcm version 1.0.7 getting this error when I used to start rails server can not load such file google auth...

Can you show the output of bundle add fcm
It should have the following
...
Installing os 1.1.4
Installing signet 0.16.1
Fetching googleauth 1.1.2
Installing googleauth 1.1.2
Fetching fcm 1.0.7
Installing fcm 1.0.7

Hey @Anandshr did you setup the GOOGLE_APPLICATION_CREDENTIALS_PATH ?

I am also facing the same issue, my FCM gem version being installed is 1.0.5 and I don't see the required dependencies, installed with FCM gem, being listed in the gemfile here.

I installed googleauth gem and it worked
The gem:
gem 'googleauth'


[QUAD] Enhancement : Auto generate first workfile based on workfile template

Thanks! Solid reference. I've assigned it to myself as 'backlog' since it's non-urgent but it overlaps with some other goals I've had my eyes on recently.


Bumping versions; gax-grpc is now stable (caveat annotations)

Codecov Report

Merging #420 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #420   +/-   ##
=========================================
  Coverage     70.41%   70.41%
  Complexity      629      629
=========================================
  Files           134      134
  Lines          2897     2897
  Branches        219      219
=========================================
  Hits           2040     2040
  Misses          778      778
  Partials         79       79

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 966017c...7a3a4d9. Read the comment docs.


[Feature Request]: Don't inherit theme fonts

Choose the extension for feature request.
Full Screen Mode
📝 Provide a description of the new feature
See this:

I'm using text theme and the font completely ruins the full screen mode page.
I suggest you use a font exclusively for this page.
➕ Additional Information
Also I don't know if you'd consider it or not... but can you add a toggle to hide the buttons under the lyrics permanently?

Better to raise the issue with theme dev, as adding a workaround for this will be not feasible, this theme is not only overriding the font, but also size font weight etc. Even if I set a font for the extension, the size thing is overriding every text and making it small.


Thread Network Protocol

Does this ADK also support Thread Network protocol, Apple introduced in HomePod Mini?

No it doesn't. For thread support in ADK please go through MFi portal.


Add links to pull requests in release log

#38 Some change (#13) --> Some change ([#13](https://github.com/owner/repo/pull/13))

I think GitHub already links #[PR or issue number] automatically. Example: https://github.com/google/google-auth-library-java/releases/tag/v0.11.0

It does, but that doesn't work for the generated changlog.md we include in the package ;)

Ah, makes sense

@busunkim96 🎉congrats on landing the first of many!


Remove password's max-length

"The Password may not be greater than 20 characters."

thanks for the PR and the comic :)


ROX-18609: Introduce ping pong messages

Description
When central is exposed behind an ingress controller that does TLS termination, our current way of doing keepalives according to the gRPC doc by using HTTP/2 frames isn't working as expected. As a reference, this issue and answer from NGINX maintainers shows that in those cases, an end-to-end connectivity health check is preferred.
For this, we introduce a new message which is sent in an interval between Central and Sensor with a configurable interval.
To support this, a new concept of CentralCapabilities similar to the already existing ones for Sensor have been introduced. This will allow to only conditionally send the Ping message from Sensor if Central has the capability.
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed

see CI.

Current dependencies on/for this PR:

master

PR #7161   👈

This comment was auto-generated by Graphite.

/retest

This PR has been superseeded by #7310.
The central capabilities introduction will be split into a separate PR.


Add package duktape

Let me know if you need help with this :)

@dom96 This should be fixed now, thanks.

Please test it. I'm getting this now:
~ » nimble install https://github.com/manguluka/duktape-nim
Downloading https://github.com/manguluka/duktape-nim using git
    Prompt: Missing directory /tmp/nimble_6795/githubcom_mangulukaduktapenim/duktape. Continue? [y/N]
    Answer: y
    Prompt: Missing directory /private/tmp/nimble_6795/githubcom_mangulukaduktapenim/duktape. Continue? [y/N]
    Answer:

Overzealous .gitignore...
Updated and tested installing from GitHub without issue.

Awesome. Thanks!


DataManagement - Missing relationships field in VersionData model

Hi Team,
There is one field called relationships in the version tip, but it's missing in the VersionData model. It's essential for SDK users to find storage id and derivative id/urn in this field.

this looks like a duplicate of the issue I filed: #30

This has been fixed as part of this release: https://www.nuget.org/packages/Autodesk.DataManagement/2.0.0-beta3
Please review it and let us know in case of any issues. Thanks!


How to visualize synteny between genomes using SynDiv

Hi @duzezhen,
Thank you for developing such a useful tool. I am currently interested in using SynDiv to create synteny plots for multiple Arabidopsis genomes, similar to the image below. Could you please guide me on how to do this?

You can use the plotsr package from SyRI to visualize multi-genomic synteny diversity.


[RFC][RUNTIME] Introduce new object protocol.

This PR introduces a new object protocol to unify the node and object.
We also updated the existing runtime::vm code to make use of the new system.
Update to the node will be done in a follow-up PR.
Other changes:

Remove object-related code in json serializer as that code logic was not complete
and we have a separate serializer for VM, can revisit later.

cc @jroesch @icemelon9 @junrushao1994 @zhiics

@junrushao1994 @icemelon9 @yzh119 can you help review this PR?

Yes, the goal is to migrate noderef/node to be subclass of object/objectref. The migration needs to take a few steps to complete

ping @zhiics for another round of review

@tqchen thanks. This is now merged.


OCPBUGS-17322: linuxptp-daemon pod status changes to Error and CrashLoopBackOff after a ptpconfig is loaded

fix crash loop due to nil pointer

/lgtm

/lgtm


RC Spot-Check Test: Diffusion 1.1.0-rc.1

RC Spot-Check Test
Mentions: @arouinfar @kathy-phet @KatieWoe
Simulation links

github repository for issues (please create issues in gas-properties)
phet top-level directory
sim: all_phet.html
phet-io wrapper index
link to phet-io zip file

Test Matrices
General Test:

[x] Tester =MM , Platform = win 11 firefox , Time = 1
[ ] Tester = LV, Platform = Win 11 Chrome, Time = 0.75

PhET-iO Test:

[x] Tester =MM, Platform = win 11 firefox , Time = 1
[ ] Tester = , Platform = , Time =

Additional Features Test:

[ ] Tester = , Platform = , Time =
[ ] Tester = , Platform = , Time =

Features included

PhET-iO
Dynamic Locale
Alternative Input
UI Sound
Sonification
Description
Voicing

Focus and Special Instructions
This sim is part of a suite of 3 sims, all being released and tested at the same time. Diffusion is one screen from the Gas Properties sim -- see implementation-notes.md for more details. As such, an RC spot-check is sufficient.
The QA issues for the other sims in this suite are:

https://github.com/phetsims/qa/issues/1107
https://github.com/phetsims/qa/issues/1108

This is the first PhET-iO version of this sim, so there is no need to test the Diff or Migration wrappers.
Issues to Verify
These issues have the "status:ready-for-review" label. Unless an issue says to close after verifying, assign the
issue back to the developer.

[x] https://github.com/phetsims/gas-properties/issues/221

For QA...

General features

What to Test

Click every single button.
Test all possible forms of input.

Test all mouse/trackpad inputs.
Test all touchscreen inputs.

If there is sound, make sure it works.
Make sure you can't lose anything.
Play with the sim normally.
Try to break the sim.
Test some query parameters. (See QA Book for a
list of query parameters.)
When making an issue, check to see if it was in a previously published version.
Try to include version numbers for browsers.
If there is a console available, check for errors and include them in the Problem Description.
As an RC begins and ends, check the sim repo. If there is a maintenance issue, check it and notify developers if there
is a problem.
As the RC ends, notify the developer of any new QA credits that need to be added.

PhET-iO features

What to Test

Make sure that public files do not have password protection. Use a private browser for this.
Make sure that private files do have password protection. Use a private browser for this.
Make sure standalone sim is working properly.
Make sure the wrapper index is working properly.
Make sure each wrapper is working properly.
Launch the simulation in Studio with ?stringTest=xss and make sure the sim doesn't navigate to youtube
For newer PhET-iO wrapper indices, save the "basic example of a functional wrapper" as a .html file and open it. Make
sure the simulation loads without crashing or throwing errors.
Load the login wrapper just to make sure it works. Do so by adding this link from the sim deployed root:/wrappers/login/?wrapper=record&validationRule=validateDigits&&numberOfDigits=5&promptText=ENTER_A_5_DIGIT_NUMBER

Further instructions in QA Book
Conduct a recording test to Metacog, further instructions in the QA Book. Do this for iPadOS + Safari and one other
random platform.
Conduct a memory test on the stand alone sim wrapper (rc.1).
Test one platform combination with ?phetioDebug=true on the Studio and State wrapper.
If Pan/Zoom is supported, make sure that it works when set with PhET-iO State.
Test that the sim works offline:

Click the link to the phet-io zip file (at top of issue) to download the zip file.
Unzip it to a spot locally.
Open index.html by double clicking it on your desktop or in a Finder-view.
It should look like the standalone version of the sim in PhET-iO brand.

Accessibility features

What to Test

Specific instructions can be found above.

Make sure the accessibility (a11y) feature that is being tested doesn't negatively affect the sim in any way. Here is
a list of features that may be supported in this test:

Alternative Input
Interactive Description
Sound and Sonification
Pan and Zoom
Mobile Description
Voicing

Test all possible forms of input.

Test all mouse/trackpad inputs.
Test all touchscreen inputs.
Test all keyboard navigation inputs (if applicable).
Test all forms of input with a screen reader (if applicable).

If this sim is not in this list or up to date there, make an
issue in website to ask if PhET research page links need updating. Please
assign to @terracoda and @emily-phet.

Screen Readers
This sim may support screen readers. If you are unfamiliar with screen readers, please ask Katie to introduce you to
screen readers. If you simply need a refresher on screen readers, please consult the
QA Book, which should have all of the information
you need as well as a link to a screen reader tutorial made by Jesse. Otherwise, look over the a11y view before opening
the simulation. Once you've done that, open the simulation and make sure alerts and descriptions work as intended.

Platforms and Screen Readers to Be Tested

Windows 10 + Latest Chrome + Latest JAWS
Windows 10 + Latest Firefox + Latest NVDA
macOS + Safari + VoiceOver
iOS + Safari + VoiceOver (only if specified in testing issue)

Critical Screen Reader Information
We are tracking known screen reader bugs in
here. If you find a screen reader bug,
please check it against this list.

Keyboard Navigation
This sim supports keyboard navigation. Please make sure it works as intended on all platforms by itself and with a
screen reader.
Magnification
This sim supports magnification with pinch and drag gestures on touch screens, keyboard shortcuts, and mouse/wheel
controls. Please test magnfication and make sure it is working as intended and well with the use cases of the
simulation. Due to the way screen readers handle user input, magnification is NOT expected to work while using a screen
reader so there is no need to test this case.

FAQs for QA Members

There are multiple tests in this issue... Which test should I do first?
Test in order! Test the first thing first, the second thing second, and so on.

How should I format my issue?

We typically assign the developer who opened the issue in the QA repository.

My question isn't in here... What should I do?
You should:

Consult the QA Book.
Google it.
Ask Katie.
Ask a developer.
Google it again.
Cry.

Just a heads up, Diffusion 1.1 has been patched for https://github.com/phetsims/joist/issues/976.

Looks like QA is done

Thanks QA! Onward to an RC spot-check.


Prepare the BAMOE branches for the 8.0.5 release

Thanks for submitting your Pull Request!
Please make sure your PR meets the following requirements:

[ ] Pull Request title is properly formatted: [RHPAM-XYZ] Subject
[ ] Pull Request contains link to the JIRA issue
[ ] Pull Request contains description of the issue
[ ] Pull Request does not include fixes for issues other than the main ticket
[ ] Attached commits represent units of work and are properly formatted
[ ] You have read and agreed to the Developer Certificate of Origin (DCO) (see CONTRIBUTING.md)
[ ] Every commit contains Signed-off-by: Your Name<EMAIL_ADDRESS>- use git commit -s

Update 8.0.5 artifacts : https://github.com/jboss-container-images/rhpam-7-image/pull/668


v2 not working with Nomic

Seems that v2 (i'm using lastest v2.0.2) doesn't work with Nomic chain anymore
refreshing signing info for nomicvalcons1y83npk4q35f6xjav0l9qjgm6xxjmkmddwg5eh8 could not find validator nomicvalcons1y83npk4q35f6xjav0l9qjgm6xxjmkmddwg5eh8
address is retrieved using the HEX value of address on a RPC node

and https://slowli.github.io/bech32-buffer/

this was a working configuration (reported by other users, not tried by me)

Having the same issue here, would be great to have Nomic alerting.

@blockpane do you need help on this?

Here's what I can tell on this one.
Tenderduty is pulling validator info using a request to the /abci_query RPC endpoint with the /cosmos.staking.v1beta1.Query/Validator path. I do this so only the RPC is needed, and not RPC + REST|GRPC.
It doesn't look like protobuf/ABCI queries are supported in Nomic. There aren't a ton of pure ABCI queries used in tenderduty, but more than getting the consensus key is broken.
After looking at their javascript client, it appears there is a websocket endpoint for getting all validators with the same info, but nothing for a specific validator. So it might be possible to pull this info and loop, but will still have issues with getting slashing params and other ABCI lookups.

Hey so just wanted to report that nomic is mostly working with the latest version using the valcons address. We won't get our missed block counter but it does alert when a node is down.

you are right, now it's correctly working! It does not resolve the moniker only, at least on my side


Environment setup error and LoRA finetuning baselines

Hi, thanks for your work. Recently I wanna to reproduce your results (SFT baseline and lora performance).
Setup env:
I followed the README to setup the env. The env is setup with no error.
Test 1: use xtuner train:
xtuner train llama_7b_qlora_alpaca_e3 --deepspeed deepspeed_zero2

Error: How to reproduce the test?

Test 2: use examples:
I tried the examples by following the README.
python train_lora_hf.py

Question 1: what is the lora baseline? how to choose the hyperparameters (e.g. learning_rate, etc.) ?
On alpaca dataset, using default code (learning_rate=2e-5, num_train_epochs=3), the final training loss is 1.03; using custom configuration (learning_rate=2e-5), the final training loss is 0.77. What is the best configuration for this dataset? Also what to choose for other datasets (e.g. sql, arxiv, code, medical, etc.)?
Question 2: what is the original full-parameters (without lora) finetuning baseline?
By replacing build_lora_model() by build_model() in train_lora_hf.py, I was trying to reproduce the full-paramaters finetuning (without lora). The training loss is always 0. There should be something wrong. How could I reproduce the full-parameters finetuning baseline?

Question 3: how to enable deepspeed ZeRO while using examples/train_lora_hf.py?
I wanna to reproduce the full-parameters finetuning baseline on different LLMs. With ZeRO, I will be able to train larger LLM with fewer GPUs. Could you give some suggestions?
Many thanks!

@bing0037  Hi, thanks!
Test 1
I cannot repro this error, with llama_7b_qlora_alpaca_e3. Did you make any modifications to the config? If so, please post your config!
Test 2
It is noted that we do not produce models. Our framework is intended to provide a repository with efficient fine-tuning capability.
Q1
We recommend a learning rate of 2e-4 for QLoRA and LoRA, and 2e-5 for full fine-tuning. Other parameters, such as batch size, epoch, and weight decay, can be tuned according to your needs.
You can use one GPU training with https://github.com/LZHgrla/xtuner/blob/main/xtuner/configs/llama/llama_7b/llama_7b_qlora_oasst1_e3.py. The model trained with this is comparable to the QLoRA official models when evaluated on MMLU. Since evaluating only based on MMLU is one-sided, we did not add it to all the configs. If you consider enabling it, you can refer to PR https://github.com/InternLM/xtuner/pull/208 and config.
Q2
Maybe you should reduce the learning rate for full-parameter fine-tuning.
Q3
In examples, we aim to demonstrate the usage of our xtuner.apis. It is only used to provide models and datasets, while training relies on transformers.Trainer. So, you can refer the docs of transformers.Trainer to obtain more usage. DOCS
If you want to use ZeRO, we recommend using xtuner's training pipeline, as you did in Test 1! (So, the first thing is to work together to resolve your error bug!)

@LZHgrla Thanks for your reply.
I reinstall the env from source and currently the xtuner train running works well.
I run the alpaca finetuning test using llama_7b_qlora_alpaca_e3.py with default lr=2e-5. The final training loss is 1.02. Then I tried lr=2e-5, the final training loss is 1.09.
(1) Could you provide the expected training loss on alpaca dataset (lora & qlora & full-parameter)?
(2) Also, could you provide the config to perform full-parameter finetuning to reproduce the full-parameter baseline (hyperparameter selection: lr / epochs / deepspeed zero / ...)?
(3) More baseline results are appreciated (alpaca / arxiv / code/ lawyer /... with full-parameter/lora/qlora).
Thanks!

@bing0037
The configs we provide are all for single-gpu fine-tuning (except those specifically marked ***_gpu8.py). If there is no error with your environment, then the result obtained by directly using xtuner train $CONFIG can be considered as the baseline.
We have some models released on Huggingface and Modelscope, but there are no records specifically for loss. The reason is that we are not building baseline models, but providing a repository with capability of efficient fine-tuning LLM.

@LZHgrla Thanks a lot for your reply.
test results:
I tested the full-parameter and qlora finetuning on alpaca dataset.
(1) For qlora, I use the original llama_7b_qlora_alpaca_e3.py.
The final training loss is 1.02.
(2) For the full-parameter finetuning, I modify the config by removing lora and quantization_config as shown below:
The final training loss is 0.7.

Question:
Should we suppose to have a comparable result with full-parameter finetuning? Could you provide some information or suggestion on how to get a comparable result using lora or qlora?

@bing0037
If the training loss does not show any outliers, it can be considered as the baseline for this model, data, and corresponding configuration.
The results you've shown seem to be fine, and it is quite normal that the loss when using LoRA or QLoRA is indeed higher than that of full fine-tuning.


Add first frame reporting to gallery's Play Store Console logging

From local testing, we're likely 1.5s from the number reported in the play store.


Two Niner Diner (O69)

Thanks for creating this repository for us. Suggest to add Two Niner Diner at O69 to the Google Map

Check the updated content packs - just did a major update.


ADD tasks/packages-zypper.yml

New file tasks/packages-zypper.yml used on SUSE/openSUSE.
With this file the role worked in my tests, but only with ports > 1024. Not sure what is missing.
The caddy package delivered by openSUSE works fine.

Thanks & apologies for taking so long on this!


It would be really useful to be able to do offsets of a certain number of columns.

I guess that might be more difficult as this grid isn't a fixed number of columns or a fixed gutter width.
Something like:
<Box width={1/3} offset={1/3} />

You can use margin (which is how offsets typically work) to do this:
<Box width={1/3} ml={100/3 + '%'} />

Yeah, it would be nice to be able to use the same shorthand as for width to do an offset.

I'll just use a helper for now, but let me know if you want me to submit a PR for adding offset.
I've got some crazy stuff going on with offsets...
const toPercent = (v) => (v * 100) + '%'

                width={[1, 1, 5 / 14]}
                ml={[0, 2/14, 1/14].map(toPercent)}
                mr={[0, 2/14, 0].map(toPercent)}

Yeah, you could also wrap what you've got into a component, maybe something like:
const Column = ({
  offset = [],
  ...props
}) =>
  <Box {...props} ml={offset.map(toPercent)} />

Hm.. I've been thinking of wrapping them anyways since Box doesn't feel as intuitive as Column or Col. Anyways, thank you so much for the help.
Wether or not you want it as built in functionality is up to you. I do think it's a common use case. Bootstrap has a section of their grid page dedicated to it so that would seem to support that.

Closing this out since the lower-level margin-based API seems to handle this use-case

I'll just use a helper for now, but let me know if you want me to submit a PR for adding offset.
I've got some crazy stuff going on with offsets...
const toPercent = (v) => (v * 100) + '%'

                width={[1, 1, 5 / 14]}
                ml={[0, 2/14, 1/14].map(toPercent)}
                mr={[0, 2/14, 0].map(toPercent)}

I believe this should be highlighted, it was a really good solution and I also implemented it in my project


What is the formal name of the benchmark?

I cannot find the formal name anywhere in the paper or documentation...

Hi @zhimin-z
Thank you for your interest in our work. The details about the benchmarks are available at https://mbzuai-oryx.github.io/Video-ChatGPT. Its named as "Video-based Generative Performance Benchmarking". Thanks

Hi @zhimin-z
Thank you for your interest in our work. The details about the benchmarks are available at https://mbzuai-oryx.github.io/Video-ChatGPT. Its named as "Video-based Generative Performance Benchmarking". Thanks

Thanks for your reply. This is is a cool name, but is there a short name for it so I can cite it in my paper?

Hi @zhimin-z
That should be fine. thanks


springSecurityService.getCurrentUser() method does not exists

I use spring-security-core:3.0.0.M1 in grails project.
After successful DI into controller springSecurityService does not contain these methods:
springSecurityService.currentUser
springSecurityService.getCurrentUser()
springSecurityService.loadCurrentUser()
But it must has, as I read in documentation
GitHub issue http://stackoverflow.com/questions/32669708/null-pointer-on-springsecurityservice-currentuser

Any comment?

I am using it with grails 3.0.9 and I am extensively using springSecurityService.getCurrentUser() method in my application to resolve tenant. I've commented on your SO question too. Try Gradle:run task.

I have no idea why this would fail - you can see the methods in the source: https://github.com/grails-plugins/grails-spring-security-core/blob/master/grails-app/services/grails/plugin/springsecurity/SpringSecurityService.groovy

Yes, I saw it, but it's a fact - at a runtime there isn't such method
2015-10-29 14:00 GMT+03:00 Burt Beckwith<EMAIL_ADDRESS>
I have no idea why this would fail - you can see the methods in the
source:
https://github.com/grails-plugins/grails-spring-security-core/blob/master/grails-app/services/grails/plugin/springsecurity/SpringSecurityService.groovy
—
Reply to this email directly or view it on GitHub
https://github.com/grails-plugins/grails-spring-security-core/issues/389#issuecomment-152146979
.

--

Salex S.

Is it possible that someone has overridden that bean? This would happen if you created a service in grails-app/services with the name SpringSecurityService, but in any package. It could also have been done in resources.groovy, or another plugin.

Closing as can't reproduce, since this is likely specific to this application, and if it were a real bug it would have affected everyone.

@burtbeckwith It is random and I've also faced this issue and for my case it appears if I run grails application by running Application.groovy. Gradle:bootRun works fine. It is quite strange but I've observed this also.

Considering the importance of other issues, I would suggest not to invest time on this.

I found a solution. The problem was in my custom UserDetailsService. I didn't find what was wrong but when I switched tp plugin the method becime available.
'''
package com.xxx.security
import com.xxx.gorm.security.User
import grails.plugin.springsecurity.userdetails.GormUserDetailsService
import grails.plugin.springsecurity.userdetails.NoStackUsernameNotFoundException
import grails.transaction.Transactional
import org.slf4j.Logger
import org.slf4j.LoggerFactory
import org.springframework.security.core.GrantedAuthority
import org.springframework.security.core.userdetails.UserDetails
import org.springframework.security.core.userdetails.UsernameNotFoundException
/**

This make possible to authenticate through a user UID and login fields
by default authentication is done by email field

*/
class ExtendedUserDetailsService extends GormUserDetailsService {
protected Logger logger = LoggerFactory.getLogger(getClass())

@Override
@Transactional(readOnly = true, noRollbackFor = [IllegalArgumentException, UsernameNotFoundException])
UserDetails loadUserByUsername(String username, boolean loadRoles) throws UsernameNotFoundException {

	def user = User.findWhere(email: username)
	if (!user) {
		user = User.findWhere(login: username)
		if (!user) {
			user = User.findWhere(uid: username.toInteger())
			if (!user) {
				logger.warn 'User not found: {}', username
				throw new NoStackUsernameNotFoundException()
			}
		}
	}

	Collection<GrantedAuthority> authorities = loadAuthorities(user, username, loadRoles)
	createUserDetails(user, username, authorities)
}

protected static UserDetails createUserDetails(User user, String username, Collection<GrantedAuthority> authorities) {

	new DbstCurrentUser(username, user, authorities)
}

}
'''
And this is my custom user service
'''
package com.xxx.security
import com.xxx.gorm.security.User
import grails.plugin.springsecurity.userdetails.GrailsUser
import org.springframework.security.core.GrantedAuthority
/**

Represents userDetail (acts as a proxy class between domain class and current web user)

Created by salex on 19.09.2015.
*/
class DbstCurrentUser extends GrailsUser {
private User user
DbstCurrentUser(String username, User user, Collection authorities) {
super(username, user.password, user.enabled, !user.accountExpired, !user.passwordExpired, !user.accountLocked, authorities, user.id)
this.user = user
}
public User getUser() {
return user;
}
public Role getRoles() {
return user.roles;
}
@Override
String toString() {
return user.name + " (" + user.uid + ") " + user.email
}
}
'''


First pass of changes for using s3 as the backing store.

Once we've tested this, we can switch it to fetching all the data from
S3 and remove the disk storage part.

👍


fix: Remove all references to v2

fix #4553

If your build fails  due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-go/blob/main/.github/Contributing.md
PR Checklist
Please check if your PR fulfills the following requirements:

[x] I am not introducing a breaking change (if you are, flag in conventional commit message with BREAKING CHANGE: describing the break)
[x] I am not introducing a new dependency (add notes below if you are)
[ ] I have added unit tests for the new feature or bug fix (if not, why?)
[ ] I have fully tested (add details below) this the new feature or bug fix (if not, why?)
[ ] I have opened a PR for the related docs change (if not, why?)

Testing Instructions

New Dependency Instructions (If applicable)

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@32cb541). Click here to learn what that means.
The diff coverage is 0.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##             main    #4573   +/-   ##
=======================================
  Coverage        ?   41.56%
=======================================
  Files           ?      106
  Lines           ?     9758
  Branches        ?        0
=======================================
  Hits            ?     4056
  Misses          ?     5356
  Partials        ?      346

Impacted Files
Coverage Δ

internal/core/data/application/event.go
62.59% <0.00%> (ø)

internal/core/data/controller/http/event.go
82.41% <ø> (ø)

internal/pkg/controller/http/common.go
52.77% <ø> (ø)

internal/pkg/controller/http/secret.go
80.00% <ø> (ø)

These fields should be removed. https://github.com/edgexfoundry/edgex-go/blob/main/internal/support/notifications/config/config.go#L44-L45

removed


feat(child-process): use new module transport (connect, send)

Implementing connect/send instead of invoke https://github.com/hi-ogawa/vite-environment-examples/pull/139
summary

runner connect uses GET /sse, then server responds stream with x-client-id header
runner send uses POST /sse with x-client-id header, then server returns a payload via a stream associated with initial connect.

#140  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @hi-ogawa and the rest of your teammates on  Graphite


useAll for ValueListenable

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (3ffbb41) 100.00% compared to head (963aeb3) 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##            master        #2   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            3         3
  Lines           34        39    +5
=========================================
+ Hits            34        39    +5

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


transfer discussion should list more of the constraints

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
https://docs.github.com/en/discussions/managing-discussions-for-your-community/managing-discussions#transferring-a-discussion
What part(s) of the article would you like to see updated?
The current text says in paragraph form:

To transfer a discussion, you must have permissions to create discussions in the repository where you want to transfer the discussion.
If you want to transfer a discussion to an organization, you must have permissions to create discussions in the source repository for the organization's discussions.
You can only transfer discussions between repositories owned by the same user or organization account.
You can't transfer a discussion from a private repository to a public repository.

It's incomplete
It really shouldn't be in paragraph form as it's really hard to determine if something is eligible in this for.

Additional information
https://github.com/orgs/community/discussions/3381#discussioncomment-2648205
https://github.com/orgs/community/discussions/3381#discussioncomment-2656034
It'd be better if it was written like this:

The destination repository must have discussions enabled.
The discussion being transferred cannot be an "Announcement format" (with a link to a picture like https://user-images.githubusercontent.com/6379424/165794923-31209021-ba53-490a-8212-7a6815bb0deb.png) or a topic that covers it -- ideally, once https://github.com/github/docs/issues/31056 is resolved, that'd create a good destination for the link.
An explanation about transferring discussions to repositories of different visibility. I don't actually know the full rules. I know that a discussion in a private repository can't be transferred to a public repository, but I don't know about transferring to/from internal repositories.
There must be a matching category type in the destination repository.

If the discussion is in an organization, it can't be transferred outside the organization without jumping through hoops.

Note: I can't recall if you need permissions to do something in the source repository. If you do, it should be mentioned. Frankly, if you don't, that should be mentioned too, and what happens if you're missing that permission should be mentioned.

@jsoref Thank you for opening this issue! I'll get this triaged for review ✨

行為守則

[x] 我已閱讀並同意 GitHub Docs 專案的行為準則

docs.github.com 上的哪些文章受到影響？
https://docs.github.com/en/discussions/managing-discussions-for-your-community/managing-discussions#transferring-a-discussion
您希望更新文章的哪一部分？
當前文本以段落形式表示：

要轉移討論，您必須有權在要轉移討論的儲存庫中建立討論。
如果要將討論轉移到組織，您必須有權在組織討論的來源儲存庫中建立討論。
您只能在同一使用者或組織帳戶擁有的儲存庫之間轉移討論。
您無法將討論從私人儲存庫轉移到公共儲存庫。

這是不完整的
它確實不應該採用段落形式，因為很難確定某些內容是否符合此要求。

附加資訊
https://github.com/orgs/community/discussions/3381#discussioncomment-2648205  https://github.com/orgs/community/discussions/3381#discussioncomment-2656034
如果這樣寫就更好了：

目標儲存庫必須啟用討論
正在傳輸的討論不能是「公告格式」（帶有連結到類似https://user-images.githubusercontent.com/6379424/165794923-31209021-ba53-490a-8212-7a6815bb0deb.png-理想情況下，一旦討論格式實際上沒有記錄 #31056得到解決，這將為連結創建一個好的目的地。
關於將討論轉移到不同可見性的儲存庫的解釋。我實際上不知道完整的規則。我知道私人存儲庫中的討論無法轉移到公共存儲庫，但我不知道如何轉移到內部存儲庫或從內部存儲庫轉移。
目標儲存庫中必須有相符的類別類型
您必須有權在要傳輸討論的儲存庫中建立討論。
如果討論是在組織內進行的，則無法將其轉移到組織外，除非經過重重困難

注意：我不記得您是否需要權限才能在來源儲存庫中執行某些操作。如果這樣做，應該提及。坦白說，如果您不這樣做，也應該提及這一點，並且應該提及如果您缺少該許可證會發生什麼。

#30802

Note the constraint about announcements is now listed in https://docs.github.com/en/discussions/managing-discussions-for-your-community/managing-categories-for-discussions#creating-a-category as part of https://github.com/github/docs/commit/c211dc56a0c340c6195de0c26fbba976472318e0 (noted in https://github.com/github/docs/issues/31056#issuecomment-1934642642).
But you can't link to that, so prose will be needed here.

Given https://github.com/github/docs/pull/31540, closing this issue!


What is the default behavior if exceed the maximum amount of Event Hub Receivers

Based on documentation only 5 no-epoch receivers can listen on one consumer group. I initialized 6 event hub receivers but no error came from 6th receiver.  I expect error from function:

listenerHandler, err = hub.Receive(ctx, partitionID, handler, eventhub.ReceiveWithPrefetchCount(prefetchedEvents))

but no error was returned. What is the default behavior of this function if exceed the maximum amount of Event Hub Receivers? Is there way how to find out that limit was exceeded?

The expected behavior is that Event Hubs would terminate a 6th receiver.
It's likely the listenerHandler is where the error is happening. I haven't verified, but I would not be surprised if the connection is established successfully, hub.Receive(...) returns, then the connection is terminated by Event Hubs and the error shows up in the listenerHandler.

I tested and it looks like the connection is established successfully. No error came from hub.Receive(...). The handler, listenerHandler, worked but no events came from event hub and also no error showed up. It was not terminated by event hub or the error was not propagated to the handler. It looks like a bug.

Agreed... It sounds like a bug. Could you build your code with -tags debug and run the process with env var DEBUG_LEVEL=3, and post back what you find.

Logs:
16:47:13.374767 TX(Session): Flow{NextIncomingID: 2, IncomingWindow: 100, NextOutgoingID: 2, OutgoingWindow: 100, Handle: 1, DeliveryCount: 1, LinkCredit: 1, Available: <nil>, Drain: false, Echo: false, Properties: map[]}
16:47:13.374838 TX: Disposition{Role: Receiver, First: 0, Last: <nil>, Settled: true, State: Accepted, Batchable: false}
16:47:13.374915 TX(Session): Detach{Handle: 1, Closed: true, Error: *Error(nil)}
16:47:13.399081 RX(Session): Detach{Handle: 1, Closed: true, Error: *Error(nil)}
16:47:13.399189 TX(Session): Detach{Handle: 0, Closed: true, Error: *Error(nil)}
16:47:13.423271 RX(Session): Detach{Handle: 0, Closed: true, Error: *Error(nil)}
16:47:13.448417 TX: Begin{RemoteChannel: 0, NextOutgoingID: 0, IncomingWindow: 100, OutgoingWindow: 100, HandleMax:<PHONE_NUMBER>, OfferedCapabilities: [], DesiredCapabilities: [], Properties: map[]}
16:47:13.472662 RX: Begin{RemoteChannel: 1, NextOutgoingID: 1, IncomingWindow: 5000, OutgoingWindow: 100, HandleMax: 255, OfferedCapabilities: [], DesiredCapabilities: [], Properties: map[]}
16:47:13.472790 TX: Attach{Name: LsOxBP0oATCbno-TAPT-uvP5qi7s8ugLdd4sOdIO-0h8yoiB-BNAOg, Handle: 0, Role: Receiver, SenderSettleMode: <nil>, ReceiverSettleMode: first, Source: source{Address: fixtest/ConsumerGroups/$Default/Partitions/0, Durable: 0, ExpiryPolicy: , Timeout: 0, Dynamic: false, DynamicNodeProperties: map[], DistributionMode: , Filter: map[apache.org:selector-filter:string:describedType{descriptor:<PHONE_NUMBER>5764, value: amqp.annotation.x-opt-offset > '@latest'}], DefaultOutcome: <nil>Outcomes: [], Capabilities: []}, Target: <nil>, Unsettled: map[], IncompleteUnsettled: false, InitialDeliveryCount: 0, MaxMessageSize: 0, OfferedCapabilities: [], DesiredCapabilities: [], Properties: map[]}
16:47:13.977327 RX(Session): Attach{Name: LsOxBP0oATCbno-TAPT-uvP5qi7s8ugLdd4sOdIO-0h8yoiB-BNAOg, Handle: 0, Role: Sender, SenderSettleMode: <nil>, ReceiverSettleMode: <nil>, Source: <nil>, Target: <nil>, Unsettled: map[], IncompleteUnsettled: false, InitialDeliveryCount: 0, MaxMessageSize: 0, OfferedCapabilities: [], DesiredCapabilities: [], Properties: map[]}
16:47:13.977442 RX(Session): Detach{Handle: 0, Closed: true, Error: *Error{Condition: amqp:resource-limit-exceeded, Description: Exceeded the maximum number of allowed receivers per partition in a consumer group which is 5. List of connected receivers - nil, nil, nil, nil, nil. TrackingId:f2693735-9b54-48c0-bd4b-5be497e04cd7_B25, SystemTracker:replicationdevhub:eventhub:fixtest~16383, Timestamp:2019-08-13T14:47:13 Reference:730c2293-b15c-4ab6-be91-da7b18217c30, TrackingId:ae8c7ce5-78cb-4574-b7e6-346a3959b094_B25, SystemTracker:replicationdevhub:eventhub:fixtest~16383|$default, Timestamp:2019-08-13T14:47:13 TrackingId:2fa27c7adc9c4f9e9d0b35a565f3c3a0_G36, SystemTracker:gateway5, Timestamp:2019-08-13T14:47:13, Info: map[]}}
16:47:13.977477 RX: Attach{Name: LsOxBP0oATCbno-TAPT-uvP5qi7s8ugLdd4sOdIO-0h8yoiB-BNAOg, Handle: 0, Role: Sender, SenderSettleMode: <nil>, ReceiverSettleMode: <nil>, Source: <nil>, Target: <nil>, Unsettled: map[], IncompleteUnsettled: false, InitialDeliveryCount: 0, MaxMessageSize: 0, OfferedCapabilities: [], DesiredCapabilities: [], Properties: map[]}
16:47:13.978125 TX: Flow{NextIncomingID: <nil>, IncomingWindow: 0, NextOutgoingID: 0, OutgoingWindow: 0, Handle: 0, DeliveryCount: 0, LinkCredit: 100, Available: <nil>, Drain: false, Echo: false, Properties: map[]}
16:47:13.978245 RX: Detach{Handle: 0, Closed: true, Error: *Error{Condition: amqp:resource-limit-exceeded, Description: Exceeded the maximum number of allowed receivers per partition in a consumer group which is 5. List of connected receivers - nil, nil, nil, nil, nil. TrackingId:f2693735-9b54-48c0-bd4b-5be497e04cd7_B25, SystemTracker:replicationdevhub:eventhub:fixtest~16383, Timestamp:2019-08-13T14:47:13 Reference:730c2293-b15c-4ab6-be91-da7b18217c30, TrackingId:ae8c7ce5-78cb-4574-b7e6-346a3959b094_B25, SystemTracker:replicationdevhub:eventhub:fixtest~16383|$default, Timestamp:2019-08-13T14:47:13 TrackingId:2fa27c7adc9c4f9e9d0b35a565f3c3a0_G36, SystemTracker:gateway5, Timestamp:2019-08-13T14:47:13, Info: map[]}}
16:47:13.978305 TX(Session): Detach{Handle: 0, Closed: true, Error: *Error(nil)}

There is the error:

16:47:13.977442 RX(Session): Detach{Handle: 0, Closed: true, Error: *Error{Condition: amqp:resource-limit-exceeded, Description: Exceeded the maximum number of allowed receivers per partition in a consumer group which is 5. List of connected receivers - nil, nil, nil, nil, nil.

I can see this error but I think it is not propagated to the ListenerHandle.

From the log output, it looks like you're using pack.ag/amqp pre-v0.11.1. (I wouldn't expect to see the Flow frame at 16:47:13.978125 if it were v0.11.1 or later.)
v0.11.1 fixed this error propagation bug https://github.com/vcabbage/amqp/releases/tag/v0.11.1

The master branch has a bumped dependency for pack.ag/amqp.
@gavinfish, this issue might be resolved when the next version is tagged.

I updated pack.ag/amqp to v0.12.0 and It works. Thx guys.

The latest version (v2.0.1) of azure-event-hubs-go has upgraded the amqp library's version to v0.11.2. This issue should have been mitigated.
@PeterUherek Thanks for sharing information here!


[nrf fromtree] bootutil: Fixing memset not beeing called

Memset could have been out optimized by compiler and also not called in error path.
(cherry picked from commit 256bc37aad8f44b9971772a8e48bebf046e47e56)
Signed-off-by: Dominik Ermel<EMAIL_ADDRESS>

@carlescufi @pdunaj We will have to merge this on red CI for MCUboot because yamllint issue is not yet fixed.


Support a wider selection of GHC.

As discussed in #81.

I took the liberty to add a bunch of stack-*.yaml files and a small build script that runs stack build --stack-yaml with them.
I also re-built the Travis configuration from scratch with haskell-ci.

I make no attempt to test on systems other than Linux, as I do not have any available.

The build is failing for no particular reason. I also had a few of these. It seems Travis has become less reliable recently. See here for a successful build of the same commit.

I've restarted that failing entry.

Presto!

@thumphries  Is there something else I can do?


omero web nginx config is ignored

Nginx is configured before the systemd setup. This means omero-web configuration properties that affect the generated nginx config file (e.g. omero.web.prefix) are ignored.

How critical is this, @manics ?

If anyone sets omero.web.prefix their OMERO.web won't work. I suspect this has always been the case, and no-ones reported it until I discovered it the other day.

Turns out I fixed it and forgot to open the PR: https://github.com/openmicroscopy/ansible-role-omero-web/pull/18


Property '$t' does not exist on type 'CreateComponentPublicInstanceWithMixins<ToResolvedProps...;

Environment

Operating System: Linux
Node Version:     v20.14.0
Nuxt Version:     3.13.2
CLI Version:      3.14.0
Nitro Version:    2.9.7
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      -
Runtime Modules:  -
Build Modules:    -

Reproduction
My package json :
  "dependencies": {
    "@heroicons/vue": "^2.1.3",
    "@histoire/plugin-nuxt": "^0.17.17",
    "@histoire/plugin-vue": "^0.17.17",
    "@nuxt/eslint-config": "^0.3.6",
    "@nuxt/test-utils": "^3.12.0",
    "@nuxtjs/i18n": "^8.5.5",
    "@nuxtjs/seo": "^2.0.0-rc.18",
    "@nuxtjs/tailwindcss": "^6.12.1",
    "@pinia/nuxt": "^0.5.1",
    "@tailwindcss/container-queries": "^0.1.1",
    "@vuelidate/core": "^2.0.3",
    "@vuelidate/validators": "^2.0.4",
    "@vueuse/components": "^11.1.0",
    "@vueuse/core": "^11.1.0",
    "@vueuse/nuxt": "^11.1.0",
    "dayjs": "^1.11.11",
    "dotenv": "^16.4.5",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-prettier": "^5.1.3",
    "eslint-plugin-vitest": "^0.3.26",
    "histoire": "^0.17.17",
    "jwt-decode": "^4.0.0",
    "mitt": "^3.0.1",
    "nuxt": "^3.13.2",
    "nuxt-auth-utils": "^0.4.2",
    "nuxt-snackbar": "^1.0.4",
    "pinia": "^2.1.7",
    "prettier": "^3.2.5",
    "sass": "^1.74.1",
    "tailwind-merge": "^2.4.0",
    "unplugin-auto-import": "^0.17.5",
    "vue": "^3.4.21",
    "vue-router": "^4.3.0",
    "vue-tailwind-datepicker": "^1.7.3",
    "vue-tsc": "^2.1.6",
    "vue3-carousel-nuxt": "^1.1.3",
    "webdriverio": "^8.36.1"
  },
  "devDependencies": {
    "@histoire/plugin-nuxt": "^0.17.17",
    "@histoire/plugin-vue": "^0.17.17",
    "@nuxt/eslint": "^0.3.0-beta.3",
    "@nuxtjs/device": "^3.1.1",
    "@pinia-plugin-persistedstate/nuxt": "^1.2.1",
    "@typescript-eslint/eslint-plugin": "^7.3.1",
    "@typescript-eslint/parser": "^7.3.1",
    "@vitest/browser": "^1.5.2",
    "@vitest/coverage-v8": "^1.4.0",
    "@vitest/ui": "^1.5.2",
    "@vue/test-utils": "^2.4.5",
    "eslint": "^8.57.0",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-vitest": "^0.3.26",
    "happy-dom": "^14.3.1",
    "husky": "^9.0.11",
    "jsdom": "^24.0.0",
    "playwright-core": "^1.42.1",
    "typescript": "^5.4.3",
    "vitest": "^1.5.2"
  },
  "resolutions": {
    "vite-plugin-checker": "0.8.0",
    "vue-tsc": "2.0.29"
  },
  "packageManager"<EMAIL_ADDRESS>
Describe the bug
Just update to nuxt 3.13.2 (started form 3.12.2) and vs-code give me this error  :
Property '$t' does not exist on type 'CreateComponentPublicInstanceWithMixins<ToResolvedProps<{ slides: ISlider[]; class?: string | undefined; sizeClass?: string | undefined; hasGradient?: boolean | undefined; }, {}>, { ChevronLeftIcon: typeof ChevronLeftIcon; ChevronRightIcon: typeof ChevronRightIcon; userStore: typeof userStore; width: typeof width; p...'
When I want to build my project (with nuxt build), it give me the same error, but no problem in dev mod.
I also see my translation in dev mod.
Additional context
I tried  to create a vue.d.ts file and put this inside :
declare module "vue" {
  interface ComponentCustomProperties {
    $t: (key: string, ...params: any[]) => string;
  }
}

Yes the $t error disapear, but now every emit or called function (in Pinia for exemple) is now an implicit any and building not working.
Logs
No response

A small repository for reproduction

I haven't checked it locally yet, but you should change any module augments from @vue/runtime-core to vue, such as the one here https://github.com/FlorientPlouvin/Reproduction-i18n/blob/main/plugins.d.ts should be like this instead:
declare module "vue" {
  interface ComponentCustomProperties {
    $device: Device;
    $breakpoints: {
      isMobile: boolean;
      isTablet: boolean;
      isDesktop: boolean;
      isPortable: boolean;
      current: string;
    };
  }
}

Augmenting @vue/runtime-core breaks other correct augmentations.

It's was this ! Thanks you !


Allow zuul reproducer to pull multiple depends-on

Allow the zuul reproducer to work with a job that contains more than one
depends-on to a same repo. Until now, the reproducer will fail because
the second invocation of the git ansible module finds an already checked-out
branch when trying to pull the second depends-on.
As a pull request owner and reviewers, I checked that:

[x] Appropriate testing is done and actually running

/approve


App project: Current Cases Germany

Current Cases Germany on Google Play
https://play.google.com/store/apps/details?id=com.kaolick.currentcasesgermany

Unfortunately Google removed my app from the Play Store.


Conditional Compilation of Logger Package

the following steps are needed to ensure a clean installation that is not dependent on a compiled logger package:

add a parameter to the installer that asks if the logger package is  installed

Option 1:
add a dynamic package header filled with a constant set to the installer parameter (logger_installed constant number = 0;)
Option 2:
Staticly set the compiler flag in order to prevent the wrapper to be compiled when the logger package does not exists
to tell the oracle compiler if the following code is to be compiled

create a wrapper function that calls the logger package and define with the compiler notation dynamic Compilerflag in order
currently we concluded that the first option to create a header package that is created in the installation process fits our development process the best

we need these attributes

version
utplsql_installed
logger_installed
apex_installed


Add example for Erlang support

During the announcement someone asked about Erlang support. I think this should be a good starting point, but i don't do that much Erlang..
-module(broaderl).
-define(broadway, 'Elixir.Broadway').
-define(message, 'Elixir.Broadway.Message').
-behaviour(?broadway).

-export([start_link/0]).
-export([handle_message/3, handle_batch/4]).

start_link() ->
  Opts = [],
  ?broadway:start_link(broaderl, Opts).

handle_message(_, #{} = Message, _) ->
  Fun = fun(_Data) ->
    % Do some calculations
    ok
  end,

  Updated = ?message:update_data(Message, Fun),
  ?message:put_batcher(Updated, sqs).

handle_batch(sqs, _Messages, _BatchInfo, _Context) ->
  % Send batch of messages to S3
  ok.

@ConnorRigby I'll try to put together a quick Rebar3 + Erlang guide. Thanks!


Moving wrong positioned comment in test code

"// Range queries." comment in incorrect line.
Moving it to above "metric[20s]"

These are correct, it's the end time that makes it a range query.

sorry. the "metric[20s]" is not range query?

i misunderstood.sorry for your inconvenience :)

metric[20s] is a range vector selector.


WidgetSpan throwing dimensions != null in AutoSizeText.rich

Steps to Reproduce
Flutter documentation has this example for using Text.rich
const Text.rich(
  TextSpan(
    children: <InlineSpan>[
      TextSpan(text: 'Flutter is'),
      WidgetSpan(
        child: SizedBox(
          width: 120,
          height: 50,
          child: Card(
            child: Center(
              child: Text('Hello World!')
            )
          ),
        )
      ),
      TextSpan(text: 'the best!'),
    ],
  )
),

And the result:

But if I swap Text.rich for AutoSizeText.rich, it throws the error 'dimensions != null': is not true
Code sample
// Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatelessWidget {
  final String title;

  const MyHomePage({
    Key? key,
    required this.title,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: const [
            Text.rich(TextSpan(
              children: <InlineSpan>[
                TextSpan(text: 'Flutter is'),
                WidgetSpan(
                    child: SizedBox(
                  width: 120,
                  height: 50,
                  child: Card(child: Center(child: Text('Hello World!'))),
                )),
                TextSpan(text: 'the best!'),
              ],
            )),
          ],
        ),
      ),
    );
  }
}

Screenshots

Stacktrace
======== Exception caught by widgets library =======================================================
The following assertion was thrown building LayoutBuilder:
'package:flutter/src/widgets/widget_span.dart': Failed assertion: line 105 pos 12: 'dimensions != null': is not true.

Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.


Sort nodes by published/modified and id

This is an alternative to #2212.
This makes the sorting stable even if entries are modified/published in the same second. It unconditionally adds the id column to the ORDER BY's. It also adds additional composite indices. These might not be worth it and the original indices might be obsolete (I haven't checked).

@mikekasprzak anything?

@mikekasprzak I've rebased this and resolved the conflicts, any chance to get this in now?


Feature request: Support RFC-6266 for Download contents filename

On contents file download,osf.io set the filename in content-disposition header.
like
response['Content-Disposition'] = 'attachment; filename={}'.format(filename)
6 code results in osf.io
https://github.com/CenterForOpenScience/osf.io/search?utf8=✓&q=Content-Disposition%3A&type=
If osf.io supports RFC-6266,download-filename containing the Unicode character can treat well.
see:
https://tools.ietf.org/html/rfc6266#section-5

Hi @ebijun,
Thanks for the heads up! The only public-facing API route affected by this hasn't been exposed in the UI yet, but we've ticketed it in our internal issue tracker to make sure it's fixed before it is exposed in the UI.


Is there any development plan of doccano?

I found some useful links:
prodi.gy
Chinese-Annotator
The prodigy using active learning structure, and automatic push some hard samples to be labeled (This is very difficult).
The Chinese-Annotator using the same structure of prodigy, but it's no longer development.
I am very interested in the active learning parts, is there any possible to write some todo list or development plan？

Thanks for your concern. There is no plan to support the active learning feature, but there is another feature named auto labeling. Maybe this is close to what you want. #18

Thanks.

the auto_labeling feature + #20  would enable you to re-order your examples according to whatever active learning objective you wanted.

About the reason that we don't include active learning, please refer #6.


Disable protection for a Hyper-V virtual machine (Hyper-V to Azure)

Disable replication and remove (recommended) : This option only delete the object from site recovery, if we've performed failover or planned failover those VMs will still be up and running on Azure.
Can you please update the same in the article.

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

ID: d4e25918-0eab-3275-8f0e-3d5d60d1b96a
Version Independent ID: ecdd86b3-e2da-3984-372a-83ede968acd1
Content: Remove servers and disable protection
Content Source: articles/site-recovery/site-recovery-manage-registration-and-protection.md
Service: site-recovery
GitHub Login: @Rajani-Janaki-Ram
Microsoft Alias: rajani-janaki-ram

@aquibqureshi26 Thanks for the feedback! I have added the content author for further review and update as appropriate.
@Rajani-Janaki-Ram FYI.

Hi,
Just following up to get an update on the thread.

Hi,
Can you please check and update the article.

Updated. PR out

#please-close

Hi Rajani,
I cannot find the updated content in the doc.

Hi Rajani,
I cannot find the updated content in the doc.

HI, The PR is being processed, should be out in the next few hours.

oh okay, thanks for the reply. please close

#please-close

Only Microsoft employees can manage issues via commenting in this repo.


API call missing to stop video display

There exist API call stop_video(), but it only stops video source.  There should also be an API call to stop video display, since at least on Android, opengles_display() starts to produce errors when the rendering surface is destroyed.  That happens when the activity displaying the video becomes invisible, for example, when the home button is pressed.  There is also need to restart video display, when orientation of the surface (and thus its X/Y size) changes.

here is the code for video_stop:
/**
 * Stop the video source
 *
 * @param v   Video object
 */
void video_stop(struct video *v)
{
	if (!v)
		return;

	debug("video: stopping video source ..\n");

	v->started = false;
	v->vtx.vsrc = mem_deref(v->vtx.vsrc);
}

currently in only stops the video source.
I can see 2 solutions to this issue:

add stopping of display in video_stop

add a new function called video_stop_display

in both cases the display can be stopped with this code:
	vrx->vidisp = mem_deref(vrx->vidisp);

OK, thanks for the code.  I prefer option (2) so that camera can be kept operational when rendering surface is destroyed.  I'll test and create pull request.

This pull request https://github.com/alfredh/baresip/pull/977 adds video_stop_display() API function.  Should video_stop() be renamed to video_stop_source() for consistency?

many thanks.
I think it does not matter to me, it could be called
video_stop or video_stop_source, I am fine with either.

Alfred E. Heggestad writes:

I think it does not matter to me, it could be called
video_stop or video_stop_source, I am fine with either.

OK, let it be as is.


Trigger ML suite training periodically on iris

We need to trigger training for every endpoint on iris using a job array at a specific schedule
We can use a cron job for this (maybe?) but we need to talk to HPC.

@mikemhenry if you have some spare cycles would you be able to hit this one?

Do we need this to run a self-hosted runner for github to pick up or do we just need a job to run locally and email us if it fails?

We just need a job to run locally on a schedule.

Done with a cronjob.


Can dask-jobqueue use multi-node jobs (Was: Creating dask-jobqueue cluster from a single job versus multiple jobs)?

This is not strictly an "issue" and more a question about suggested usage so if this question belongs somewhere else, please direct me there!
I've been working closely with admins of the NASA Pleiades HPC system on how best to support interactive Dask workflows on that system. Pleiades uses PBS. Thus far, my workflow has been to configure a cluster in which a single worker uses all available cores and memory on a single node. For example, for a machine that has 12 cores and 48 GB of memory per node, my jobqueue config is the following:
jobqueue:
    pbs:
        cores: 12
        processes: 1
        memory: 48GB
        interface: ib0
        resource_spec: "select=1:ncpus=12"
        walltime: "00:30:00"

I then request 10-20 nodes by starting an equivalent number of jobs, e.g by running cluster.scale(10). A lot of the time, this configuration works well, but one of the problems that has cropped up (and is common to many systems) is high availability of resources, i.e. when the cluster is busy, I may have to wait > 30 minutes for even a single job to start; not so ideal for interactive workflows! The entire Pleiades system is in very high demand so this is often an issue, particularly on the newer, faster processors.
After raising this issue with the HPC staff, one suggested solution was to use a high-availability queue (called "devel") that allows users to submit only a single job at a time, but has very high availability (i.e. short waiting times). In this case, the suggested pattern would be to submit a single job that requests multiple cores on multiple nodes. For 25 nodes, each with 24 cores and 128 GB of memory, the jobqueue config is:
jobqueue:
  pbs:
    cores: 200
    memory: 2000GB
    processes: 200
    interface: ib0
    queue: devel
    resource_spec: 'select=25:ncpus=8:model=has'
    walltime: "00:30:00"

Then, the user would call cluster.scale(1) once and be done. This satisfies the 1 job restriction of the high-availability queue, reduces wait times as you have asked for all resources up front, and is also more "friendly" to the scheduler as it does not involve submitting many jobs. This pattern of course does not permit any scaling up or down, but that is a separate issue.
This is quite different than the multi-job workflow I've used previously (and the one that seems to be recommended in the dask-jobqueue docs) and I'm trying to wrap my head around whether this makes sens. My main questions are :

Does this configuration pattern make sense in the context of dask-jobqueue and are there any disadvantages (other than scalability)? In the context of dask-jobqueue, the single-job cluster seems like an anti-pattern to me, but I certainly understand why this is preferable from the HPC admin perspective.
Which node is this single Dask worker running on? and
How is work being parallelized across multiple nodes if only a single job is running?

I've experimented with the above single-job workflow (and minor variations on it) and have found that computations (which worked just fine in the multi-job context) will lock up and or result in a killed worker. However, it is not entirely clear to my why this is happening.
I apologize for the lengthy post! I'm trying to get a sense of what is the most optimal usage pattern here in the context of many different configuration options and trying to wrap my head around how all of this actually works. Any advice would be extremely helpful!

Hi @wtbarnes, thanks for the question!

Does this configuration pattern make sense in the context of dask-jobqueue

Nope, it does not. There has been some discussion about this in the past. Dask-jobqueue is quite simple, and does not handle multi node jobs. As you say, it is an anti-pattern.
In order to do this, you probably want to look as Dask-mpi.
For your remaining questions, the dask-worker is a process which will run only on one node, the the fist one from your reservation. Other nodes you ask from PBS will do nothing, remaining idle. Your worker is probably killed because it exceeds the resource available on its node.
Another thing you may try is stick with dask-jobqueue, but submit smaller jobs, e.g. cores=4, memory=16GB. This way they may be scheduled faster than jobs needing entire nodes. But this may not be possible on Pleiades, or the admins may not like it as it means more jobs submitted to the batch scheduler.

@guillaumeeb Thanks for the detailed reply. This is what I suspected, but wanted to make sure my intuition was correct! I'll go ahead and close this issue, but may add comments following further discussion with the Pleiades folks. Thanks for the Dask-mpi suggestion as well! This may be a good solution for their proposed single-job, high-availability queue.

@guillaumeeb I have to correct something I said previously:

Then, the user would call cluster.scale(1) once and be done.

Rather, for the example single-job, multi-node example that I gave above, this would be cluster.scale(200). Given that I'm asking for 25 nodes and 8 cpus per node, this just submits a single job (but starts 200 workers).
Does this overcome the multi-node limitation of dask-jobqueue? Or will work still only be allocated over a single node?

I think the answer is the same dask-jobqueue does not know how to use multi-node jobs. It seems like you understand your job scheduler well, so to understand what dask-jobqueue is doing in terms of jobs: print(cluster.job_script()) will tell you the job script that is going to be submitted. The argument of cluster.scale will tell you how many of this jobs are going to be submitted. This is explained in more details in https://jobqueue.dask.org/en/latest/howitworks.html. If you think this page can be improved, a PR would be greatly appreciated!
Full disclosure: the scheduler I know the most about is SGE, which does not have the multi-node jobs feature, so I don't really understand how multi-node jobs are used in practice with SLURM or other schedulers.
Side-comment: with the 0.7 release you can use cluster.scale(jobs=1) which makes it easier to reason in terms of jobs rather than Dask workers.

Now I'm confused. My jobqueue.yaml is as follows:
jobqueue:
pbs:
# Dask worker options
 cores: 200             # Total cores per job
 memory: 2000GB          # Total amount of memory per job
 processes: 200         # Number of Python processes per job

 interface: ib0          # Network interface to use like eth0 or ib0
 death-timeout: 60      # Number of seconds to wait if a worker can not find a scheduler
 local-directory: /nobackup/jcbecker/dask # Location of fast local storage like /scratch or $TMPDIR

 # PBS resource manager options
 queue: devel
 project: null
 walltime: '01:00:00'
 extra: []
 env-extra: []
 resource-spec: 'select=25:ncpus=8:model=has'
 job-extra: []
 log-directory: null

Then in Python I do:
jcbecker@pfe20 506$ python
Python 3.7.3 | packaged by conda-forge | (default, Jul  1 2019, 21:52:21)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.

from dask_jobqueue import PBSCluster
from dask.distributed import Client
ncores = 200
cluster = PBSCluster()
cluster.scale(ncores)
client = Client(cluster)
print(cluster.job_script())
#!/usr/bin/env bash

#PBS -N dask-worker
#PBS -q devel
#PBS -l select=25:ncpus=8:model=has
#PBS -l walltime=01:00:00
JOB_ID=${PBS_JOBID%%.*}
/home7/jcbecker/.conda/envs/geo/bin/python -m distributed.cli.dask_worker tcp://<IP_ADDRESS>:43961 --nthreads 1 --nprocs 200 --memory-limit 10.00GB --name dask-worker--${JOB_ID}-- --death-timeout 60 --local-directory /nobackup/jcbecker/dask --interface ib0
So PBS gave me 25 nodes on which to run 200 processes. Isn't that how many workers I get according to cluster.job_script()?
Please enlighten me.

To answer @wtbarnes and @jeffcbecker questions:

Does this overcome the multi-node limitation of dask-jobqueue? Or will work still only be allocated over a single node?

So PBS gave me 25 nodes on which to run 200 processes. Isn't that how many workers I get according to cluster.job_script()?

Yes, PBS gives you 25 nodes.
But the python script you launch doesn't know how to use it. There's no MPI magic there or any distributed SSH like thing. It just starts 200 processes on the first ("mother") node PBS gave you. So all your work will be run on this node, and the node will probably be overwhelmed...
Some batch scheduler such as slurm proposes other abstractions to just spawn processes on any node of the reservation. PBS has pbs_dsh, but nothing like that is happening here.

Thank you for the clarification. I changed my jobqueue.yaml to have the following
resource-spec: 'select=1:ncpus=24:model=has'
Then I do:

cluster = PBSCluster()
cluster.scale(240)
cluster.job_script()
'#!/usr/bin/env bash\n\n#PBS -N dask-worker\n#PBS -q normal\n#PBS -l select=1:ncpus=8:model=has\n#PBS -l walltime=01:00:00\nJOB_ID=${PBS_JOBID%%.*}\n\n\n\n/home7/jcbecker/.conda/envs/geo/bin/python -m distributed.cli.dask_worker tcp://<IP_ADDRESS>:36343 --nthreads 1 --nprocs 24 --memory-limit 4.17GB --name dask-worker--${JOB_ID}-- --death-timeout 60 --local-directory /nobackup/jcbecker/dask --interface ib0 --interface ib0 --interface ib0\n'

And checking with qstat indicates that each job only requested 8 cpus, not 24 like I specified. Isn't this wrong?

Not sure what changed, but it's working correctly now - each job requests 24 cpus (cores)

@guillaumeeb @lesteve Thanks for all of your help on this. I think we have a more clear picture about how to proceed with our cluster configuration on Pleiades. I'm going to close this (again!) as we seemed to have resolved our main issue, but will reopen if we run into more problems.

FYI I changed the title to reflect the discussion. Feel free to edit it or suggest a better title!


Add option to disable dispatching writes to thread pool

The socket transport gets free output buffering when writes are dispatched to the thread pool.
We want to allow experimentation where callbacks all run on the same thread.

Maybe we should rename UseTransportThread to DispatchApplicationToThreadPool and invert the logic for consistency.

I'd like to suggest UseThreadPoolDispatch.

@cesarbs That is very close to my original name ThreadPoolDispatching which @davidfowl apparently didn't like considering he changed it to UseTransportThread.

Shorter and less complex sounding names:
DispatchWritesToThreadPool -> DeferWrites
UseTransportThread -> DispatchRequests

I find the UseTransportThread improperly placed on the KestrelServerOptions.
For some transports, requests will be dispatched already, so this causes double dispatch.
For other transports, not dispatching may be inappropriate and cause issues.

@tmds yes, we but kestrel dispatches more than just the transport callbacks.

@cesarbs That is very close to my original name ThreadPoolDispatching which @davidfowl apparently didn't like considering he changed it to UseTransportThread.

The other reason I picked UseTransportThread is because defaulting bools to false is just better 😄 . I'll change the name of the bool (again) though.

Here's the design we're going to use:
public interface IConnectionInformation
{
    IScheduler ApplicationScheduler { get; }
}

public class KestrelServerOptions
{
    public SchedulingMode ApplicationSchedulingMode { get; set; }
}

public enum SchedulingMode
{
    Default,
    ThreadPool,
    Inline
}

I don't understand the design. Why does the transport pass the applicationscheduler to the application?

@tmds Kestrel.Core has the mode exposed on its options. If the mode is set to default then the transport gets to pick the scheduler. This lets the transport pick where application callbacks run. By default, our transports will dispatch application code to the thread pool when appropriate. For example, on linux, the sockets transports already dispatches so there's no need to do it again. On windows however, callbacks can run on the IO thread, so it would dispatch by default.
If the user always wants to dispatch despite what the transports pick for the application scheduler, then it can override by setting the SchedulingMode to TheadPool. If the user wants to run on whatever thread they happen to be on basically disabling all dispatching then they can choose Inline.

Ok, I get it


Help me!

I got an error when VECTOR CONFIGURATION: " error: rpc error: code = Unimplemented desc = unknown service Anki.Vector.external_interface.ExternalInterface ". How to fix it? Thank Admin !

@kercre123 help me please. Thank You so much!!!

Hello, first thank you ! for creating wire-pod, my vector has re-birth.
everything seems to work fine except in the Vector Configuration, i have the exact same message.
I'm running server on Windows WSL
Vector (prod version) was previously on firmware 0.9 and is now on 2.0.1 to run wire-pod
DDL servers seems down for months, so could this be the root cause ?
"Error pinging jdocs, likely unauthenticated" : what could that mean ? What is jdocs for ?

This is a common issue with WSL. I believe it's due to how requests are routed to the Linux VM. It's always best to run it on a native Linux machine, like a Raspberry Pi.
Wire-pod relies on being able to match serial numbers to IP addresses, and using that for identification. However, all requests to wire-pod are routed through the same virtualized network, so they aren't getting the same IP they would need in order to be able to communicate with the robot. So the robot is able to talk to it, but it can't talk to the robot.
Eventually, wire-pod will have a native Windows build which will solve this.

I hated this error and fixed it on windows by installing ubuntu on a virtual machine (used VMware). Confirming it is related to wsl. Works 100% as intended

How did you get the VM to run as a bridged network? I can't get mine to do that.. and it can't find it when I do NAT - how did you solve this?

Think it depends on vmware version, but bridged connection option was available for me. Maybe it helps to checks the steps on https://thesecmaster.com/install-ubuntu-linux-on-vmware-workstation/


feat(Icon): add SendIcon

Overview

add SendIcon, For now we are using this icon for prompt engineering component as we are building a chat based UI. It will be used for button for sending prompts.

PR Checklist

[ ] Related to designs: figma
[ ] Related to JIRA ticket: LABS-61
[ ] I have run this code to verify it works
[ ] This PR includes unit tests for the code change
[ ] This PR includes testing instructions tests for the code change
[ ] The alpha package of this PR is passing end-to-end tests in all relevant Codecademy repositories

Testing Instructions

Don't make me tap the sign.
PR Links and Envs

Repository
PR Link
PR Env

Monolith
Monolith PR
Monolith Env

Portal
Portal Link
Portal Env

Another Repo
Another Link
Another Env

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Since 0.11.2 update - "uninitialized constant Google::Apis::PeopleV1::PeopleService"

I've been using the People Api without problem for 6 months. But today when I updated the google-api-client gem to 0.11.2, I received the following error:

NameError (uninitialized constant Google::Apis::PeopleV1::PeopleService):

due to this line in my code:
client = Google::Apis::PeopleV1::PeopleService.new
Are there any changes how to initialize the API or is this a bug?

It seems the People API owners changed the canonical name of their API  to "People Service".
That's forced the Ruby code generator to produce Google::Apis::PeopleV1::PeopleServiceService.
That's a pretty unfortunate renaming... but please try replacing PeopleService with PeopleServiceService.

Yes, that change solved the issue. Thanks a lot for the quick response!


Cow: Watch windocks.com

Cow requests the watch of the watch_keyword windocks\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

windocks\.com has been seen in 4 true positives, 1 false positive, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


[2.0M2] Any operation using the Blueprints OrientGraph API fails

com.orientechnologies.orient.core.exception.ODatabaseException: Database instance is not set in current thread. Assure to set it with: ODatabaseRecordThreadLocal.INSTANCE.set(db); 	at com.orientechnologies.orient.core.db.ODatabaseRecordThreadLocal.get(ODatabaseRecordThreadLocal.java:35) 	at com.orientechnologies.orient.core.index.OIndexManagerAbstract.getDatabase(OIndexManagerAbstract.java:390) 	at com.orientechnologies.orient.core.index.OIndexManagerAbstract.preProcessBeforeReturn(OIndexManagerAbstract.java:433) 	at com.orientechnologies.orient.core.index.OIndexManagerAbstract.getIndexes(OIndexManagerAbstract.java:155) 	at com.orientechnologies.orient.core.index.OIndexManagerProxy.getIndexes(OIndexManagerProxy.java:56) 	at com.tinkerpop.blueprints.impls.orient.OrientBaseGraph.getIndexedKeys(OrientBaseGraph.java:1376) 	at com.tinkerpop.blueprints.impls.orient.OrientGraphQuery$OrientGraphQueryIterable.getIndexedKeys(OrientGraphQuery.java:88) 	at com.tinkerpop.blueprints.util.DefaultGraphQuery$DefaultGraphQueryIterable.getElementIterable(DefaultGraphQuery.java:145) 	at com.tinkerpop.blueprints.util.DefaultGraphQuery$DefaultGraphQueryIterable.<init>(DefaultGraphQuery.java:82) 	at com.tinkerpop.blueprints.impls.orient.OrientGraphQuery$OrientGraphQueryIterable.<init>(OrientGraphQuery.java:81) 	at com.tinkerpop.blueprints.impls.orient.OrientGraphQuery.vertices(OrientGraphQuery.java:160).....
is an example stacktrace failing for query
((OrientGraphQuery) orientGraph.query()).labels("Resource").has("_id", Compare.EQUAL, resourceId).limit(2).vertices()
similar(Same) behaviour while doing other CRUD operations
The way OrientGraph instance is instantiated
public class OrientGraphModule extends AbstractModule {
//Guice module to instantiate orientdb client interface
    private final Settings settings;
    private OrientGraph orientGraph;

    public OrientGraphModule(Settings settings) {
        this.settings = settings;
    }

    @Override
    protected void configure() {
        bind(OrientGraph.class).toInstance(orientGraph());
    }

    public OrientGraph orientGraph() {
        OGlobalConfiguration.CACHE_LOCAL_ENABLED.setValue(false);
       //dbUrl is driven from configuration: eg: remote:localhost/tenantedDatabase
        orientGraph = new OrientGraph(settings.dbUrl());
        ODatabaseRecordThreadLocal.INSTANCE.set(orientGraph.getRawGraph());
        return orientGraph;
    }
}

Is there anything missing?
If i'm not wrong,  the ThreadLocal option is set within OrientGraph initialization as well. Facing this problem while evaluating the OrientDb 2.0M2 version (moving from 1.7.8)

The issue has been closed because no response has been received after a while. In case the issue is still valid, please reopen it or write a comment that explains why it's still valid and a way to reproduce it. Thank you.