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

Build quilkin-filter-example as part of CI #328

Open
markmandel opened this issue Jul 9, 2021 · 3 comments
Open

Build quilkin-filter-example as part of CI #328

markmandel opened this issue Jul 9, 2021 · 3 comments
Labels
area/build-tools Development tooling. good first issue Good for newcomers help wanted Extra attention is needed kind/cleanup Refactoring code, fixing up documentation, etc priority/medium Issues that we want to resolve, but don't require immediate resolution.

Comments

@markmandel
Copy link
Contributor

Looking at this example, and upcoming refactoring to API surfaces, I think it would be good to compile this example and make sure the code is not broken in CI (basically in make test).

I do note that the dependency is listed as quilkin = "0.1.0", and as such won't pickup new changes - but we could point it to local, much like we do on the macros crate.

@iffyio any reason you can think that would be a bad idea? (Since you wrote the example).

Only thought I had - we should make sure the examples link in our docs always points to a release branch, rather than main.

@markmandel markmandel added the area/build-tools Development tooling. label Jul 9, 2021
@iffyio
Copy link
Collaborator

iffyio commented Jul 11, 2021

SGTM!

@XAMPPRocky
Copy link
Collaborator

I'm not sure which is better but I think this should either be added as to [[examples]] in the Cargo.toml, or added as full workspace member to members. So that it is integrated and visible to Cargo.

Only thought I had - we should make sure the examples link in our docs always points to a release branch, rather than main.

I'm not sure about this, at least I have two main concerns about this approach.

  • As you mentioned in Add mdbook and GitHub pages deployment #319 this would mean that links in examples to unreleased APIs would always be invalid until the release happens. This would prevent us from being able to use tooling like mdbook-linkcheck to check external links in CI. We could not check external links, which would be less than ideal in my opinion compared to being able to know all links work.
  • If we pointed it at a specific the release branch, these links overtime will point to older documentation if not regularly updated, giving the user a very confusing experience if there's any significant differences between the versions. To prevent that we'd to have a latest branch or equivalent that always points to the latest released version, which would be more work than linking to main directly.

@XAMPPRocky XAMPPRocky added priority/low Issues that don't need to be addressed in the near term. priority/medium Issues that we want to resolve, but don't require immediate resolution. and removed priority/low Issues that don't need to be addressed in the near term. labels Jul 12, 2021
@markmandel
Copy link
Contributor Author

As you mentioned in Add mdbook and GitHub pages deployment #319 this would mean that links in examples to unreleased APIs would always be invalid until the release happens.

Yeah this is a fun problem - and 100% agree, it would be good to check that all links work. The way I've handled this with other doc systems is that the branch name for a generalised link to github is dynamic. When running locally or pushing to the "latest" documentation, it's main. When doing a release push, it gets switched to release.x.y.z - can we do that with mdbook?

If we pointed it at a specific the release branch, these links overtime will point to older documentation if not regularly updated, giving the user a very confusing experience if there's any significant differences between the versions.

Absolutely. Same point above, if we have this coordinated via a central version number that stored in a config file that powers the generation of mdbook, then we can update this number as part of the release checklist (this is what we do for Agones).

My goal for aiming at a release branch is that if a used is working on 0.1.0 and get linked to examples in main (rather than the corresponding release branch), and the API surface has changed, that will also be confusing, as the examples won't line up with the documentation.

meta, meta note: I shouldn't make comments about docs in an issue is about CI 😁

@XAMPPRocky XAMPPRocky added good first issue Good for newcomers help wanted Extra attention is needed kind/cleanup Refactoring code, fixing up documentation, etc labels Aug 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/build-tools Development tooling. good first issue Good for newcomers help wanted Extra attention is needed kind/cleanup Refactoring code, fixing up documentation, etc priority/medium Issues that we want to resolve, but don't require immediate resolution.
Projects
None yet
Development

No branches or pull requests

3 participants