Skip to content
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

File tree restructure #17

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from
Draft

File tree restructure #17

wants to merge 6 commits into from

Conversation

pritkc
Copy link
Collaborator

@pritkc pritkc commented Nov 13, 2024

  • Unified naming conventions throughout the project to align with the standard reference used by libCEED.
  • Organized the documentation files within a nested doc/ folder.
  • Updated paths in the config.py file for the C++ Doxygen documentation to reflect the new directory structure.
  • Removed obsolete parameters in config.py to resolve deprecation warnings with lthe atest version.
  • Adjusted paths in the Makefiles.
  • Updated paths and improved contextual information in README.md
  • Added necessary documentation and build-related files, such as doc/ and Makefile, to .gitignore .

resolves #16

@pritkc pritkc added documentation Improvements or additions to documentation enhancement New feature or request labels Nov 13, 2024
@pritkc pritkc self-assigned this Nov 13, 2024
Comment on lines +15 to +20
doc/source/.*
!doc/source/*.rst
!doc/source/conf.py

# Include all non-build documentation files
!doc/
Copy link
Collaborator

Choose a reason for hiding this comment

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

Hi @pritkc , thank you for your work. I would just remove these lines and for now leave only your line 14, where we exclude the doc/build path.

You also want to exclude the path that you have specified in your Doxyfile: in the HTML_OUTPUT variable, that is HTML_OUTPUT = doc/api_docs/cpp

Suggested change
doc/source/.*
!doc/source/*.rst
!doc/source/conf.py
# Include all non-build documentation files
!doc/
doc/api_docs/cpp

@valeriabarra
Copy link
Collaborator

Hi @jbrzensk , please make sure that you are ok with the proposed changes to the directory structure.

Basically, @pritkc is proposing to simplify the nomenclature for the different flavors directly as subdirectory names. E.g.:

src/mole_C++ -> src/cpp
src/mole_MATLAB -> src/matlab

And similarly, for the examples and test directories:

examples/examples_C++ -> examples/cpp
examples/examples_MATLAB -> examples/matlab

and

tests/tests_C++ -> tests/cpp
tests/tests_MATLAB -> tests/matlab

Copy link
Collaborator

@jbrzensk jbrzensk left a comment

Choose a reason for hiding this comment

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

Many of the MATLAB examples and all of the tests have the MOLE library location coded in, to run without adding the library to the MATLAB path.

If the folder locations are changed, each of the references in the code must also be updated.

clc
close all

addpath('../../src/mole_MATLAB')
Copy link
Collaborator

Choose a reason for hiding this comment

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

This folder no longer exists. The mole source directory is hard coded into all of the MATLAB examples. If you change the name, all the MATLAB files need the reference changed.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Same here, the tests have the location of the source MATLAB hard coded. If you change the source location, they must be changed in the test files.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Source location incorrect

Copy link
Collaborator

Choose a reason for hiding this comment

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

Source location incorrect

Copy link
Collaborator

Choose a reason for hiding this comment

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

Source location incorrect

Copy link
Collaborator

Choose a reason for hiding this comment

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

Source location incorrect

Copy link
Collaborator

Choose a reason for hiding this comment

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

The source location is incorrect. I am going to stop commenting here, because there are many filepath changes to be made.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Hi @jbrzensk, thank you for catching that oversight! I noticed there are at least 32 instances that need updating. While we're discussing this, I’d appreciate your thoughts on whether adopting this unified nomenclature is worth any potential inconvenience for future legacy contributors.

@jbrzensk
Copy link
Collaborator

Are we including the generated doxygen files in the repository or letting the user create the doxygen files for C++?
What are the contents of doc/api/c++?

@valeriabarra
Copy link
Collaborator

valeriabarra commented Nov 14, 2024

Are we including the generated doxygen files in the repository or letting the user create the doxygen files for C++? What are the contents of doc/api/c++?

Hi @jbrzensk , yes, the main idea is to follow libCEED documentation model. We will have step-by-step instructions like libCEED does to explain how to build the documentation. And yes, it's a 2-step build process. First one builds the Doxygen API docs, by running, say, make with the desired target doxygen. This creates the XML files that will be then built in the User Manual by sphinx (through a plug-in that is called breathe).

@jbrzensk
Copy link
Collaborator

jbrzensk commented Nov 14, 2024

@valeriabarra I see you addressed this in the .gitignore comment above, sorry.
#17 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request refactoring
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Discussion] Proposed Directory Structure
3 participants