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

api: clean up, add docs, add entry point #1955

Merged
merged 26 commits into from
Mar 17, 2022
Merged

Conversation

davidjgoss
Copy link
Contributor

@davidjgoss davidjgoss commented Mar 16, 2022

🤔 What's changed?

  • Clean up some details of the new API, including making arguments optional where possible
  • Add API Extractor to analyse and generate docs
    • Tweak some code to make this come out better - consistent naming of types/interfaces, split out some named interfaces for things that were just inline before, etc - e.g. IRunEnvironment and mergeEnvironment is all about that
    • Eventually I'd like to also document the main entry point with this, but that's a huge piece of work and it seems like a good idea to trial it on a smaller scale here
  • Add an entry point so you can require or import from @cucumber/cucumber/api - keen to avoid adding yet more stuff to the main entry point, which should be kept for normal end user functions

⚡️ What's your motivation?

#1711

🏷️ What kind of change is this?

  • ⚡ New feature (non-breaking change which adds new behaviour)

📋 Checklist:

  • I agree to respect and uphold the Cucumber Community Code of Conduct
  • I've changed the behaviour of the code
    • I have added/updated tests to cover my changes.
  • My change requires a change to the documentation.
    • I have updated the documentation accordingly.
  • Users should know about my change
    • I have added an entry to the "Unreleased" section of the CHANGELOG, linking to this pull request.

@davidjgoss davidjgoss added 📖 documentation Improvements or additions to documentation ⚡ enhancement Request for new functionality labels Mar 16, 2022
@davidjgoss davidjgoss added this to the JavaScript API milestone Mar 16, 2022
@davidjgoss davidjgoss changed the title Feat/api entry point and docs api: clean up, add docs, add entry point Mar 16, 2022
@davidjgoss
Copy link
Contributor Author

When reviewing, bear in mind the following things are generated:

  • reports/cucumber.api.md
  • docs/api/**

@coveralls
Copy link

coveralls commented Mar 16, 2022

Coverage Status

Coverage increased (+0.006%) to 98.272% when pulling 24b420d on feat/api-entry-point-and-docs into cc633c5 on main.

Copy link
Contributor

@aurelien-reeves aurelien-reeves left a comment

Choose a reason for hiding this comment

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

I did not review everything yet
I still have a few comments. No big deal :)

CHANGELOG.md Outdated Show resolved Hide resolved
docs/javascript_api.md Outdated Show resolved Hide resolved
reports/cucumber.api.md Show resolved Hide resolved
Copy link
Contributor

@aurelien-reeves aurelien-reeves left a comment

Choose a reason for hiding this comment

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

Looks pretty good.

I did not review the whole API documentation, still I approve how it is generated and the improvements regarding the API itself

docs/javascript_api.md Outdated Show resolved Hide resolved
docs/javascript_api.md Outdated Show resolved Hide resolved
Co-authored-by: Aurélien Reeves <aurelien.reeves@smartbear.com>
@davidjgoss davidjgoss merged commit 9e31198 into main Mar 17, 2022
@davidjgoss davidjgoss deleted the feat/api-entry-point-and-docs branch March 17, 2022 14:18
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 Request for new functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants