Skip to content

Add generated docs check and generated headers target, and remove FIREBASE_NAMESPACE macro. #499

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 31 commits into from
Jun 30, 2021

Conversation

jonsimantov
Copy link
Contributor

@jonsimantov jonsimantov commented Jun 29, 2021

Run Doxygen as part of the common PR checks.

This will fail if Doxygen returns any errors or warnings. This could include missing or misspelled parameters, missing method documentation, or other issues.

Because we don't perform a full header scrub here, the Doxygen config file uses sed to remove everything between <SWIG> and </SWIG>. We could potentially perform a second pass with SWIG enabled, or do this in the Unity repo in the future, to check C# documentation.

This PR also fixes some of those same issues present in our build right now, including a few missing method docs in Firestore, a missing parameter in Database, and bad cross-references in a few different places, including all references to App and Future, which were failing due to the FIREBASE_NAMESPACE macro which is no longer needed. This PR removes all usages of the FIREBASE_NAMESPACE macro.

Note that because we also run Doxygen on some generated headers, this PR includes a new CMake target to build those headers without building the entire build. Any future generated headers should be added to that target.

This PR also contains a small change to print the list of files requiring code formatting directly to the GitHub workflow log.

@google-cla google-cla bot added the cla: yes label Jun 29, 2021
@jonsimantov jonsimantov requested review from a-maurice and alexames and removed request for alexames and a-maurice June 29, 2021 22:05
@jonsimantov jonsimantov added the tests-requested: quick Trigger a quick set of integration tests. label Jun 30, 2021
@github-actions github-actions bot added tests: in-progress This PR's integration tests are in progress. and removed tests-requested: quick Trigger a quick set of integration tests. labels Jun 30, 2021
@github-actions
Copy link

github-actions bot commented Jun 30, 2021

✅  Integration test succeeded!

Requested by @jonsimantov on commit b0a9062
Last updated: Wed Jun 30 13:15 PDT 2021
View integration test log & download artifacts

@jonsimantov jonsimantov added the tests-requested: quick Trigger a quick set of integration tests. label Jun 30, 2021
@github-actions github-actions bot removed the tests-requested: quick Trigger a quick set of integration tests. label Jun 30, 2021
@jonsimantov jonsimantov changed the title Add generated headers target, Doxyfile, and Doxygen check. Add generated docs check and generated headers target, and remove FIREBASE_NAMESPACE macro. Jun 30, 2021
@github-actions github-actions bot added the tests: succeeded This PR's integration tests succeeded. label Jun 30, 2021
@firebase-workflow-trigger firebase-workflow-trigger bot removed the tests: in-progress This PR's integration tests are in progress. label Jun 30, 2021
@jonsimantov jonsimantov enabled auto-merge (squash) June 30, 2021 17:57
@jonsimantov jonsimantov merged commit b0a9062 into main Jun 30, 2021
@github-actions github-actions bot added tests: in-progress This PR's integration tests are in progress. and removed tests: succeeded This PR's integration tests succeeded. labels Jun 30, 2021
@jonsimantov jonsimantov deleted the feature/doxygen branch June 30, 2021 18:25
@github-actions github-actions bot added the tests: succeeded This PR's integration tests succeeded. label Jun 30, 2021
@firebase-workflow-trigger firebase-workflow-trigger bot removed the tests: in-progress This PR's integration tests are in progress. label Jun 30, 2021
jonsimantov added a commit that referenced this pull request Jul 1, 2021
…EBASE_NAMESPACE macro. (#499)

Run Doxygen as part of the common PR checks.

This will fail if Doxygen returns any errors or warnings. This could include missing or misspelled parameters, missing method documentation, or other issues.

Because we don't perform a full header scrub here, the Doxygen config file uses _sed_ to remove everything between `<SWIG>` and `</SWIG>`. We could potentially perform a second pass with SWIG enabled, or do this in the Unity repo in the future, to check C# documentation.

This PR also fixes some of those same issues present in our build right now, including a few missing method docs in Firestore, a missing parameter in Database, and bad cross-references in a few different places, including all references to App and Future, which were failing due to the FIREBASE_NAMESPACE macro which is no longer needed. _This PR removes all usages of the FIREBASE_NAMESPACE macro._

Note that because we also run Doxygen on some generated headers, this PR includes a new CMake target to build those headers without building the entire build. Any future generated headers should be added to that target.

This PR also contains a small change to print the list of files requiring code formatting directly to the GitHub workflow log.

namespace firebase {
namespace internal {
class VariantInternal;
}
} // namespace firebase

namespace FIREBASE_NAMESPACE {
namespace firebase {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a test comment.

} \
classname& operator=(firebase::internal::JObjectReference&& rhs) { \
firebase::internal::JObjectReference::operator=(rhs); \
return *this; \
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a second comment.

@firebase firebase locked and limited conversation to collaborators Jul 31, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
cla: yes tests: succeeded This PR's integration tests succeeded.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants