Releases: GEOS-ESM/mepo
Add per-repo diff
Add tag commands and per-component branch list
This release of mepo
adds a mepo tag
command (with subcommands) as well as an update to mepo branch list
.
mepo tag
adds these subcommands:
mepo tag list
==>git tag
- This can be run on all repos or
mepo tag <repo>
for a specifig
- This can be run on all repos or
mepo tag create
==>git tag
but actually making a tag (with-a
as option)- This has both a
-a
and-m
option for annotated tags. If-a
is added without-m
this will popup an editor
- This has both a
mepo tag delete
==>git tag -d
- This only deletes locally not on the remote
A new mepo push --tags
was added to push tags.
Also added was the ability to do mepo branch list <repo>
to list branches only on one (or more) repos.
Finally, a .zenodo.json
file was added.
Add restore-state
This release adds a mepo restore-state
command
With this command, you should be able to restore a checkout to what the original state was. This was a request/idea inspired by @yvikhlya:
❯ mepo compare
Repo | Original | Current
---------- | -------------------- | -------
ESMA_env | (t) v2.1.6 (DH) | (b) feature/mathomp4/intel1912
ESMA_cmake | (t) v3.1.2 (DH) | (t) v3.1.2 (DH)
ecbuild | (t) geos/v1.0.5 (DH) | (t) geos/v1.0.5 (DH)
❯ mepo restore-state
Checking status...
Reverting ESMA_env to v2.1.6
❯ mepo compare
Repo | Original | Current
---------- | -------------------- | -------
ESMA_env | (t) v2.1.6 (DH) | (t) v2.1.6 (DH)
ESMA_cmake | (t) v3.1.2 (DH) | (t) v3.1.2 (DH)
ecbuild | (t) geos/v1.0.5 (DH) | (t) geos/v1.0.5 (DH)
Note: at present this will restore EVERYTHING to the previous state. Not a repo here or there.
Add pull, pull-all, and fetch-all commands
This release adds:
mepo pull
mepo pull-all
mepo fetch-all
Note that since you can't git pull
on a detached HEAD state, the pull-all
will only pull on real branches. The others will spit out as a print:
❯ mepo pull-all
Pulling branch throw-away in ESMA_env
The following repos were not pulled (detached HEAD): ESMA_cmake, ecbuild
Also fixes the mepo
file as, on Darwin, things went kablooey recently with Python 3.8
Updates to clone command
Fix for mepo push
Add mepo stash
Clone and Fetch Updates
This version of mepo adds and changes the following.
Adds
mepo fetch
can now use--tags
and--prune
mepo clone
can now runmepo init
for you if not done explicitlymepo clone URL
will do agit clone URL
/cd
/mepo init
/mepo clone
all in one shot- Better handling of hashes.
components.yaml
will now accepthash:
a latag:
andbranch:
Changes
mepo init
andmepo clone
have a slightly different interface if using a different yaml file. Since the ability ofclone
to use a URL, to pass a different yaml file, needs to be done with a flagged option:--config yamlfile
Fixes
mepo status
won't crash if a repo is not on a tag or branch
Updates to CI and Unit Tests
- Update the CI to use a matrix on Linux and macOS of python3.x and pypy3
- Fix the unit tests
Add License
LICENSE.md
was added.