Azure / Azure/azure-sdk-tools

C++ Api View should ignore types in the _internal and _detail namespace.

Open
#3,130 0 comments 0 reactions 0 assignees View on GitHub
APIView C++
Dominant language
C#
Stars
135
Forks
260
Avg merge
3d 1h
Merged PRs (30d)
143

Description

Alternatively, sorting the output to move types in the _internal and _detail namespace below other types, regardless of where they are in the AST file.

```
Subject: RE: C++ Queue SDK GA Release

You missed a step when generating the API view. There’s a bug in C++ API view. You need to move everything in _detail namespace after things not in _detail namespace to get around the bug.

I re-generated it and here’s diff between rev6 and rev4. There’s no difference. [https://apiview.dev/Assemblies/Review/0a9240a68428488e9589f54e31cf7e88?diffRevisionId=ad5817211b7a4fc3bc2de99210da0a65&doc=False&diffOnly=False&revisionId=c0ec783334d94a9e8d08e1c37ba08107](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapiview.dev%2FAssemblies%2FReview%2F0a9240a68428488e9589f54e31cf7e88%3FdiffRevisionId%3Dad5817211b7a4fc3bc2de99210da0a65%26doc%3DFalse%26diffOnly%3DFalse%26revisionId%3Dc0ec783334d94a9e8d08e1c37ba08107&data=05%7C01%7CLarry.Osterman%40microsoft.com%7C83036451540e4e8a269c08da1caa56ca%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637853815206398152%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=%2BBeXM2uAU4eUlpE9GfsgzkDjn2wPrFPaWax%2BvPRC7es%3D&reserved=0)

Subject: RE: C++ Queue SDK GA Release

Hi
I regenerated the Storage Queues APIView from latest main (commit 39d1b844ef3e9bf741ecafb5ca93b445b33608f0), since that is going GA. They are largely the same, but looks like the diff shows we removed a bunch of model types between beta.3 (rev 4) and now (rev 5) .
Was that intentional? Those don’t seem to be called out in the changelog.

[https://apiview.dev/Assemblies/Review/0a9240a68428488e9589f54e31cf7e88?diffRevisionId=ad5817211b7a4fc3bc2de99210da0a65&doc=False&diffOnly=False&revisionId=e7d162f82a82412a81fb874cb73950e6](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapiview.dev%2FAssemblies%2FReview%2F0a9240a68428488e9589f54e31cf7e88%3FdiffRevisionId%3Dad5817211b7a4fc3bc2de99210da0a65%26doc%3DFalse%26diffOnly%3DFalse%26revisionId%3De7d162f82a82412a81fb874cb73950e6&data=05%7C01%7CLarry.Osterman%40microsoft.com%7C83036451540e4e8a269c08da1caa56ca%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637853815206448155%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=YT2GONIfdL7MBlqD52jrt4aTP91f75VTtv7ijqyl27g%3D&reserved=0)

For example, PeekedQueueMessage is in the _detail namespace now:
[https://github.com/Azure/azure-sdk-for-cpp/blob/116185409e6abe92ea6ff01346c0b3419f28ee31/sdk/storage/azure-storage-queues/inc/azure/storage/queues/rest_client.hpp#L443](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-sdk-for-cpp%2Fblob%2F116185409e6abe92ea6ff01346c0b3419f28ee31%2Fsdk%2Fstorage%2Fazure-storage-queues%2Finc%2Fazure%2Fstorage%2Fqueues%2Frest_client.hpp%23L443&data=05%7C01%7CLarry.Osterman%40microsoft.com%7C83036451540e4e8a269c08da1caa56ca%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637853815206448155%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=pyUOAXJ%2F51BL7hLGkBMTNK6SChsLYqFOdG%2B5rTDpmWk%3D&reserved=0)

It used to be public in beta.1/beta.2:
[https://github.com/Azure/azure-sdk-for-cpp/blob/0a9796cb2d2763adfcd69ecbb1b15c182998e112/sdk/storage/azure-storage-queues/inc/azure/storage/queues/protocol/queue_rest_client.hpp#L59](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-sdk-for-cpp%2Fblob%2F0a9796cb2d2763adfcd69ecbb1b15c182998e112%2Fsdk%2Fstorage%2Fazure-storage-queues%2Finc%2Fazure%2Fstorage%2Fqueues%2Fprotocol%2Fqueue_rest_client.hpp%23L59&data=05%7C01%7CLarry.Osterman%40microsoft.com%7C83036451540e4e8a269c08da1caa56ca%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637853815206448155%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=D0BXEv%2FUwkiERTLKWWsEH1ss%2Fvpmj1ZSjyjm8b%2B7zjM%3D&reserved=0)
```

Contributor guide

Open the contributing guide

Research direction

Start by examining the C++ API View ordering logic and compare its output with the referenced rest_client.hpp examples, including PeekedQueueMessage and the _detail namespace. Done means types in _internal and _detail are ignored or consistently sorted below other types, regardless of their position in the AST.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.