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

lock versions of STAC core and Features API #55

Closed
5 tasks done
cholmes opened this issue Nov 12, 2020 · 9 comments · Fixed by #61
Closed
5 tasks done

lock versions of STAC core and Features API #55

cholmes opened this issue Nov 12, 2020 · 9 comments · Fixed by #61
Assignees
Milestone

Comments

@cholmes
Copy link
Collaborator

cholmes commented Nov 12, 2020

We should have released versions of STAC API mark certain versions of underlying specs as dependencies, and be clear on what version they depend on up front.

We should update all the links to be sure they track the actual version. This will likely involve find & replace for each release, unless we figure out some way to automatically do it.

  • Update submodule to point at STAC core 1.0.0-beta.2
  • Add note about properly checking out submodules
  • Update stac-spec links to be relative
  • Make clear the features API dependency
  • Add what updates are needed for a 'release' (update submodule, stac links)
@cholmes cholmes added this to the 1.0.0-beta.1 milestone Nov 12, 2020
@cholmes cholmes self-assigned this Nov 12, 2020
@m-mohr
Copy link
Collaborator

m-mohr commented Nov 12, 2020

Agreed for Features API, but couldn't/shouldn't the API be able to operate on multiple STAC versions? Also, if we fix it to STAC, we also need to re-release once a new STAC version is out. Maybe just specify a version range (e.g. >= 0.9.0 and < 2.0)?

@cholmes
Copy link
Collaborator Author

cholmes commented Nov 12, 2020

Ah, that's fair.

I was mostly thinking about making sure the link references to the STAC spec used the 'tags', instead of just master (which may change and possibly break the links).

Should we say 0.9.0 and above for STAC API beta.1? I guess your < 2.0 is just signaling that STAC API doesn't guarantee to work with a breaking change?

@cholmes
Copy link
Collaborator Author

cholmes commented Nov 13, 2020

Actually I'm realizing that the 'stac-spec @ 568a048' external folder thing in the repo is maybe meant to help with links not breaking? I was starting to do full URL references to STAC spec. But it looks like I can do relative ones to that folder, which we can 'upgrade' at our leisure?

Seems like we should probably 'set' it to 1.0.0-beta.1 of STAC spec for now? And then I can update the links to refer to it relatively. I have no idea how to work with those. But if that route makes sense I can dig in - I'm guessing that's why we had it in there in the first place?

@m-mohr
Copy link
Collaborator

m-mohr commented Nov 13, 2020

Yeah, makes sense to set it to beta.2 and make relative links.

Should we say 0.9.0 and above for STAC API beta.1? I guess your < 2.0 is just signaling that STAC API doesn't guarantee to work with a breaking change?

Yes, that was my intention.

m-mohr added a commit that referenced this issue Nov 16, 2020
m-mohr added a commit that referenced this issue Nov 16, 2020
@cholmes
Copy link
Collaborator Author

cholmes commented Nov 16, 2020

Ok, I'll change them to relative links.

Though do we need to explicitly tell people to get the sub-modules? I just have empty directories, and reading https://stackoverflow.com/questions/3796927/how-to-git-clone-including-submodules it looks like that is the norm. Should we remind people how to check it out to be sure to get the right stac-spec so the relative links work?

m-mohr added a commit that referenced this issue Nov 16, 2020
@m-mohr
Copy link
Collaborator

m-mohr commented Nov 16, 2020

Hmm... yeah submodules are tricky. I guess most people read it online, but a note somewhere doesn't hurt, right?
I'm not even sure I like the submodules approach, but I have no better solution yet I could propose.

@m-mohr
Copy link
Collaborator

m-mohr commented Nov 16, 2020

The PR has been merged. Feel free to close once you've done your changes, @cholmes .

@m-mohr m-mohr linked a pull request Nov 16, 2020 that will close this issue
4 tasks
@cholmes
Copy link
Collaborator Author

cholmes commented Nov 18, 2020

Yeah, I don't have any better approach than submodules. It seems to fit the bill, they just seem a little trickier to work with.

Added checkboxes of the things I need to do.

@matthewhanson
Copy link
Collaborator

git subtrees is a better alternative to submodules in some cases. It's more transparent, the subtree is included when you clone. But in this case I think submodules are probably better because we want to reference a fixed version of stac-spec. subtrees are good if you want to be able to commit back upstream from the subtree package, but we don't need to do that here.

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

Successfully merging a pull request may close this issue.

3 participants