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

Show a version number somewhere on the page so people know what version of the tree they are testing. #39

Open
jmegenealogy opened this issue Oct 12, 2022 · 12 comments

Comments

@jmegenealogy
Copy link
Contributor

From G2G:

The test version of the Dynamic Tree app could display a version number so you'll know exactly what testers were reporting on.

@bcaseyrls
Copy link
Contributor

This is a good idea. I think we should add a "version" string to each View's "meta" content. Then it can be shown in a standard way as part of the tree info (the title, description, etc).

What sort of structure/guidelines do we want to have for the value versions?

@MichalVasut
Copy link
Contributor

Yop, great idea!

@Clarke-11007
Copy link
Contributor

Clarke-11007 commented Oct 13, 2022 via email

@MichalVasut
Copy link
Contributor

Fun fact:

Since version 3, TeX (the typesetting system) has used an idiosyncratic version numbering system, where updates have been indicated by adding an extra digit at the end of the decimal, so that the version number asymptotically approaches π. This is a reflection of the fact that TeX is now very stable, and only minor updates are anticipated.

😊

@MichalVasut
Copy link
Contributor

Btw, there is more standardized solution, check Semantic Versioning.

@bcaseyrls
Copy link
Contributor

I think @MichalVasut's link is useful. A general Major.Minor.Patch scheme makes sense. With our views, though, I don't know if we'll ever have a new major branch from those guidelines. Those are for "Incompatible API Changes" (with "minor" being updated functionality and "patch" being bug fixes). Maybe we use the major version for whatever feels "major", since an isolated view isn't going to break other things even if rewritten.

I like having a date too. Maybe that goes in a separate meta() element instead of being attached to the version?

I love the idea of using π for the version number. So much so I don't think I'll go search if it's true. I want to believe regardless.

@harrislineage
Copy link
Member

Just an idea, but could we use Major as New views, Minor as Enhanced views, Patch as ... Patches to views?

@bcaseyrls
Copy link
Contributor

My thought was to have a separate version for each view, stored in their meta() content. I think perhaps it helps debug things more, but maybe that's overkill.

@harrislineage
Copy link
Member

That sounds good. I am not familiar with releases, but would we also version the release? How would we account for changes to Tree.js, TreeAPI.js and any other third party dependency additions/changes?

@MichalVasut
Copy link
Contributor

MichalVasut commented Oct 14, 2022 via email

@MichalVasut
Copy link
Contributor

MichalVasut commented Oct 14, 2022

<!-- meta
title: test
description: xxx
version: yyy
-->

# Release notes

2022-10-14
- added feature 1
- redactored xyz

This commented out text is not rendered by Github (when not in codeblock), but still perfectly parseable by javascript. If somebody has the need to be more creative or want do write release notes. This could be the alternative and overwrite meta fields in scripts. Also can be displayed in some modal window.

The version or date could be also parsed directly from Release notes section - the uppermost item is the current one.

@bcaseyrls
Copy link
Contributor

I'm not sure I see the advantage in putting this into a readme text file. Having a "version" field in meta() seems much simpler, and then doesn't require any parsing for display. Certainly an optional readme for a view could be useful, but parsing things out of it for display in the view page doesn't seem worth it.

I think at this early stage there's much to be gained by keeping things as simple as we can. Yes, we want groundwork done for some guidelines for new contributors. But I think the more things we have that require updating, the more likely something is going to get lost, or that the burden of all of the tasks will cause more harm than help.

Is it easier to suggest an optional readme text file? Or to have an optional "version" field in meta(). And what about changes to the tree.js and other superstructure... where does that get versioned/described. This feels like a rabbit hole.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants