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

Update README to point to node-saml documentation #886

Merged
merged 7 commits into from
Mar 6, 2024

Conversation

cjbarth
Copy link
Collaborator

@cjbarth cjbarth commented Mar 6, 2024

Update the README to point to node-saml documentation for configuration options that are passed through to node-saml.

Copy link

codecov bot commented Mar 6, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 64.42%. Comparing base (f574901) to head (93fb8d2).
Report is 2 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #886   +/-   ##
=======================================
  Coverage   64.42%   64.42%           
=======================================
  Files           4        4           
  Lines         149      149           
  Branches       37       37           
=======================================
  Hits           96       96           
  Misses         30       30           
  Partials       23       23           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@cjbarth cjbarth changed the title Readme Update README to point to node-saml documentation Mar 6, 2024
@cjbarth cjbarth added the documentation Request for or contribution to documentation label Mar 6, 2024
@cjbarth cjbarth marked this pull request as ready for review March 6, 2024 16:45
@cjbarth cjbarth requested a review from markstos March 6, 2024 16:45
@cjbarth
Copy link
Collaborator Author

cjbarth commented Mar 6, 2024

@markstos can you please have a look at this. It is a major change of the README, mostly deletes. I want to get another set of eyes on it.

Copy link
Contributor

@markstos markstos left a comment

Choose a reason for hiding this comment

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

As a user, I prefer if I don't have to use multiple references, but given the human resource contraints of open source maintenance, I understand this is reasonable way to keep the documentation maintenance load lower.

I've left some comments to suggest putting the two bits of documentation about passport-saml specific args next to each other and moved to the section on Configuring Strategy which is where they seem to apply most directly.

Otherwise, good to merge. 👍🏼

README.md Outdated

## Installation

```shell
npm install @node-saml/passport-saml
```

Please note that most of the configuration options for this are simply passed through to the underlying `node-saml`
library. For more details on the configuration options and how the underlying SAML flows work, please see the [node-saml documentation](https://github.com/node-saml/node-saml/blob/master/README.md)

Copy link
Contributor

Choose a reason for hiding this comment

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

This should be moved from "Installation" to "Configure Strategy" and bolded. "Please note that" can be dropped.

Copy link
Contributor

Choose a reason for hiding this comment

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

Also, clarify the docs by instead of using this, say "for the Strategy constructor".

README.md Outdated
- `additionalParams`: dictionary of additional query params to add to all requests; if an object with this key is passed
to `authenticate`, the dictionary of additional query params will be appended to those present on the returned URL,
overriding any specified by initialization options' additional parameters (`additionalParams`,
`additionalAuthorizeParams`, and `additionalLogoutParams`)
Copy link
Contributor

Choose a reason for hiding this comment

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

This section, with the arguments that are processed by passport-saml and not node-saml, should be moved up to the top of the "Usage" section", just below disclaimer sentence that was added, linking to node-saml.

@cjbarth
Copy link
Collaborator Author

cjbarth commented Mar 6, 2024

@markstos , I think I've addressed your concerns. Would you like to take another look?

@markstos markstos self-requested a review March 6, 2024 18:39
README.md Outdated

These are only the additional configuration parameters related to `passport-saml`. For the full list
of parameters, please see the
[node-saml documentation](https://github.com/node-saml/node-saml/blob/master/README.md)
Copy link

Choose a reason for hiding this comment

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

I don't have solution for this but documentation of released passport-saml versions refers always to current head of development branch (master) of node-saml meaning that immediately after new major refactoring (to node-saml) there is a mismatch between node-saml module used by earlier passport-saml versions and documentation that those earlier passport-saml versions point. I.e. passport-saml 5.x readme at npmjs could refer to node-saml master branch which could contain unreleased/upcoming node-saml 10.x version etc.

Copy link
Contributor

Choose a reason for hiding this comment

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

This really an internet-wide problem with software, where you have one version installed, but then look up the docs for the software on the web. Either you get the latest docs and not your current docs, or it's up to you to track down the docs for the version of the software you actually need.

In summary: I think this is "good enough" without further changes and is on-par with what other software projects do.

Copy link

Choose a reason for hiding this comment

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

Maybe if node-saml repository would contain branch per major version e.g. 5.x (and that branch would be created immediately after major release) and passport-saml side readme would refer to corresponding node-saml major version branch'es readme.

I.e. master branch (development branch) of passport-saml's readme would always refer to master branch (development branch) of node-saml.

Both repositories would contain major release branches (5.x, 6.x, ...) which are created immediately after/same time new major release and e.g. 6.x passport-saml's readme would be changed to point to 6.x node-saml readme etc.

Copy link
Collaborator Author

@cjbarth cjbarth Mar 6, 2024

Choose a reason for hiding this comment

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

@srd90 , you're talking about "Release Branch Workflow" vs. "Continuous Delivery". We currently use a "Continuous Delivery" methodology, and I've used "Release Branch Workflow" before. I only think that partially solves the problem because you then have to make sure you keep the README up-to-date.

My goal is to make sure that we release passport-saml shortly after a release to node-saml to keep things in semver-major lock-step.

Copy link
Contributor

@markstos markstos left a comment

Choose a reason for hiding this comment

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

Looks good. I pushed a commit to tighten up the language a bit more and changed my mind that "bold" was necessary after the docs were moved closer to the Strategy constructor beign discussed.

@cjbarth cjbarth merged commit 30b1478 into node-saml:master Mar 6, 2024
8 checks passed
@cjbarth cjbarth deleted the readme branch March 6, 2024 22:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Request for or contribution to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants