<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/ShellPkg/Library/UefiHandleParsingLib, branch dependabot/github_actions/actions/setup-python-7</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fsetup-python-7</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fsetup-python-7'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2026-03-26T17:36:35+00:00</updated>
<entry>
<title>ShellPkg/UefiHandleParsingLib: support handle list growth</title>
<updated>2026-03-26T17:36:35+00:00</updated>
<author>
<name>Bob Morgan</name>
<email>bobm@nvidia.com</email>
</author>
<published>2026-02-07T02:21:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=c4d29cb62187060493a1f595083ddfb6dd346f39'/>
<id>urn:sha1:c4d29cb62187060493a1f595083ddfb6dd346f39</id>
<content type='text'>
Refactor GetHandleListByProtocol() to support
additions to the handle list during its execution.
Replace LocateHandle() with LocateHandleBuffer() to
avoid the possibility that the buffer allocated for
LocateHandle() is too small if additional handles
are added during GetHandleListByProtocol() execution.

Note that the previous implementation did not detect
the handle list growth and would cause memory
corruption when writing the terminating NULL handle
to the allocated buffer.

Signed-off-by: Bob Morgan &lt;bobm@nvidia.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg: Replace include guards with #pragma once</title>
<updated>2026-02-23T21:01:28+00:00</updated>
<author>
<name>Michael Kubacki</name>
<email>michael.kubacki@microsoft.com</email>
</author>
<published>2026-02-03T19:26:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=8472271daeed6ebb23b6992155b65c029aa42984'/>
<id>urn:sha1:8472271daeed6ebb23b6992155b65c029aa42984</id>
<content type='text'>
Replace traditional `#ifndef`/`#define`/`#endif` include guards with
`#pragma` once.

`#pragma once` is a widely supported preprocessor directive that
prevents header files from being included multiple times. It is
supported by all toolchains used to build edk2: GCC, Clang/LLVM, and
MSVC.

Compared to macro-based include guards, `#pragma once`:

- Eliminates the risk of macro name collisions or copy/paste errors
  where two headers inadvertently use the same guard macro.
- Eliminate inconsistency in the way include guard macros are named
  (e.g., some files use `__FILE_H__`, others use `FILE_H_`, etc.).
- Reduces boilerplate (three lines replaced by one).
- Avoids polluting the macro namespace with guard symbols.
- Can improve build times as the preprocessor can skip re-opening the
  file entirely, rather than re-reading it to find the matching
  `#endif` ("multiple-include optimization").
  - Note that some compilers may already optimize traditional include
    guards, by recognzining the idiomatic pattern.

This change is made acknowledging that overall portability of the
code will technically be reduced, as `#pragma once` is not part of the
C/C++ standards.

However, this is considered acceptable given:

1. edk2 already defines a subset of supported compilers in
   BaseTools/Conf/tools_def.template, all of which have supported
   `#pragma once` for over two decades.
2. There have been concerns raised to the project about inconsistent
   include guard naming and potential macro collisions.

Approximate compiler support dates:

- MSVC: Supported since Visual C++ 4.2 (1996)
- GCC: Supported since 3.4 (2004)
  (http://gnu.ist.utl.pt/software/gcc/gcc-3.4/changes.html)
- Clang (LLVM based): Since initial release in 2007

Signed-off-by: Michael Kubacki &lt;michael.kubacki@microsoft.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/Library: Remove ScsiPassThruProtocolGuid</title>
<updated>2025-11-23T18:40:59+00:00</updated>
<author>
<name>Gowtham M</name>
<email>gowthamm@ami.com</email>
</author>
<published>2025-10-08T18:40:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=40d461d25f32cb33eeeede9068ed1fdc44646f06'/>
<id>urn:sha1:40d461d25f32cb33eeeede9068ed1fdc44646f06</id>
<content type='text'>
The legacy ScsiPassThruProtocol has been removed as per
the UEFI 2.10A specification.
This commit, removes references to ScsiPassThruProtocol and
transitions the implementation to only use ExtScsiPassThruProtocol,
which provides enhanced support for device enumeration,
target/LUN discovery, and broader SCSI compatibility.

Cc: Sachin Ganesh &lt;sachinganesh@ami.com&gt;
Signed-off-by: Gowtham M &lt;gowthamm@ami.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg: Deprecate EFI_UNICODE_COLLATION_PROTOCOL_GUID</title>
<updated>2025-09-05T13:50:50+00:00</updated>
<author>
<name>Gowtham M</name>
<email>gowthamm@ami.com</email>
</author>
<published>2025-08-05T14:15:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=cf5f907cd53f0a1e33a93179c9976de5d6b576e1'/>
<id>urn:sha1:cf5f907cd53f0a1e33a93179c9976de5d6b576e1</id>
<content type='text'>
As EFI_UNICODE_COLLATION_PROTOCOL_GUID is being deprecated.
Remove the instances used in ShellPkg.

Cc: Sachin Ganesh &lt;sachinganesh@ami.com&gt;
Signed-off-by: Gowtham M &lt;gowthamm@ami.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/Library: Deprecate EFI_DEVICE_IO_PROTOCOL</title>
<updated>2025-09-05T13:50:50+00:00</updated>
<author>
<name>Gowtham M</name>
<email>gowthamm@ami.com</email>
</author>
<published>2025-07-20T06:02:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=e27779e2c121e3074bf5a9330784a492010355b5'/>
<id>urn:sha1:e27779e2c121e3074bf5a9330784a492010355b5</id>
<content type='text'>
gEfiDeviceIoProtocolGuid identifies EFI_DEVICE_IO_PROTOCOL,
which provided low-level I/O and MMIO access for UEFI drivers.

It was removed in UEFI 2.10A and 2.11 due to overlapping
functionality with modern protocols like EFI_PCI_IO_PROTOCOL
and EFI_CPU_IO2_PROTOCOL. These newer protocols offer improved
modularity, abstraction, and safety, making EFI_DEVICE_IO_PROTOCOL
obsolete.

Cc: Sachin Ganesh &lt;sachinganesh@ami.com&gt;
Signed-off-by: Gowtham M &lt;gowthamm@ami.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/Library: Deprecate EFI_IP4_CONFIG_PROTOCOL</title>
<updated>2025-09-05T13:50:50+00:00</updated>
<author>
<name>Gowtham M</name>
<email>gowthamm@ami.com</email>
</author>
<published>2025-07-31T06:54:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=c3cab06d2b4f47d4673cb35c2311623ab0b488f2'/>
<id>urn:sha1:c3cab06d2b4f47d4673cb35c2311623ab0b488f2</id>
<content type='text'>
EFI_IP4_CONFIG_PROTOCOL is superseded by
EFI_IP4_CONFIG2_PROTOCOL, which provides better
support for modern network stack requirements.

It was officially removed from UEFI specifications
2.10A and 2.11 and should no longer be used in
current implementations.

Cc: Sachin Ganesh &lt;sachinganesh@ami.com&gt;
Signed-off-by: Gowtham M &lt;gowthamm@ami.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg: Remove UGA support</title>
<updated>2025-07-08T15:42:03+00:00</updated>
<author>
<name>GuoMinJ</name>
<email>newexplorerj@gmail.com</email>
</author>
<published>2025-06-12T14:48:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=ea2ef8c3c9c06733e3f046974ed08aa04912e1ce'/>
<id>urn:sha1:ea2ef8c3c9c06733e3f046974ed08aa04912e1ce</id>
<content type='text'>
The Universal Graphics Adapter (UGA) is a graphic abstraction.
The UGA I/O and Draw protocols are deprecated since UEFI 2.0 was
introduced. Cf. the UEFI spec v2.9:
"Appendix L - EFI 1.10 Protocol Changes and Deprecation List"
section L.2 "Deprecated Protocols"

Remove the UGA support.

Signed-off-by: GuoMinJ &lt;newexplorerj@gmail.com&gt;
Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg: Correct spelling errors and typos</title>
<updated>2025-07-04T01:41:47+00:00</updated>
<author>
<name>Abdul Lateef Attar</name>
<email>AbdulLateef.Attar@amd.com</email>
</author>
<published>2025-07-01T09:01:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=f2e9785b6ef3ec57aaf72b2240104d8af87545a9'/>
<id>urn:sha1:f2e9785b6ef3ec57aaf72b2240104d8af87545a9</id>
<content type='text'>
Signed-off-by: Abdul Lateef Attar &lt;AbdulLateef.Attar@amd.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg: drop support for obsolete EFI_USB_HC_PROTOCOL</title>
<updated>2025-03-06T17:32:08+00:00</updated>
<author>
<name>Leif Lindholm</name>
<email>leif.lindholm@oss.qualcomm.com</email>
</author>
<published>2025-02-13T11:04:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=cc910e4c083ffa1f8119ae99599197703393ca3e'/>
<id>urn:sha1:cc910e4c083ffa1f8119ae99599197703393ca3e</id>
<content type='text'>
EFI_USB_HC_PROTOCOL was never defined in a released UEFI specification,
so drop use of it in ShellPkg in preparation of deleting the definitions
based on something allegedly supported in confidential EFI 1.10.

Signed-off-by: Leif Lindholm &lt;leif.lindholm@oss.qualcomm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg: CodeQL Fixes</title>
<updated>2024-10-29T02:09:18+00:00</updated>
<author>
<name>Oliver Smith-Denny</name>
<email>osde@microsoft.com</email>
</author>
<published>2024-10-03T17:31:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=334f5748869996eee994f9dee41f3e6a3d9bd087'/>
<id>urn:sha1:334f5748869996eee994f9dee41f3e6a3d9bd087</id>
<content type='text'>
Includes changes across the module for the following CodeQL rules:
 - cpp/comparison-with-wider-type
 - cpp/overflow-buffer
 - cpp/redundant-null-check-param
 - cpp/uselesstest

Co-authored-by: Taylor Beebe &lt;taylor.d.beebe@gmail.com&gt;

Signed-off-by: Oliver Smith-Denny &lt;osde@linux.microsoft.com&gt;
</content>
</entry>
</feed>
