lv_port_esp32 icon indicating copy to clipboard operation
lv_port_esp32 copied to clipboard

Semantic Versioning

Open bzgec opened this issue 4 years ago • 18 comments

I see that this repository now uses versioning/tags. I think that it would be appropriate to use Semantic Versioning. As far as I know this is quite a standard for bigger projects (including lvgl - see lvgl tags).

To summarize Semantic Versioning:

Given a version number MAJOR.MINOR.PATCH, increment the:

  1. MAJOR version when you make incompatible API changes,
  2. MINOR version when you add functionality in a backwards compatible manner, and
  3. PATCH version when you make backwards compatible bug fixes.

Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.

bzgec avatar Apr 07 '21 15:04 bzgec

This issue or pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Jun 11 '21 01:06 stale[bot]

Commenting to remove stale label.

tore-espressif avatar Jun 14 '21 11:06 tore-espressif

This issue or pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Jul 11 '21 21:07 stale[bot]

Still relevant

septatrix avatar Jul 12 '21 09:07 septatrix

@tore-espressif @kisvegabor I guess we could work on this, maybe making a new branch called v7.x, this branch will support LVGL v7.11. The master branch would keep the development for supporting LVGL v8.x, once we achieve it we could make a new branch named v8.x, leaving the master branch for development.

What do you think?

C47D avatar Sep 08 '21 23:09 C47D

I like this idea. It'd be in sync with the branch names of lvgl repo.

kisvegabor avatar Sep 09 '21 12:09 kisvegabor

I already have a branch with v8 support, it might be matter of making sure we follow the same naming convention. I will wait for @tore-espressif opinion.

C47D avatar Sep 09 '21 13:09 C47D

I'm definitely in for making it aligned with the way LVGL does it

tore-espressif avatar Sep 09 '21 17:09 tore-espressif

Nice, should we support the latest LVGL v7 release on the v7 branch and track the latest v8 on the v8 branch?

Should we have a branch per LVGL release or just one per major release?

C47D avatar Sep 09 '21 18:09 C47D

Should we have a branch per LVGL release or just one per major release?

E.g. due to a new driver related feature - let's say - in v8.4 which is used in this repo too the general release/v8 might not work for people using lvgl v.8.0. So using release/v8.x branches is more future proof IMO.

kisvegabor avatar Sep 13 '21 14:09 kisvegabor

Can we use tags for that? On the drivers repo I mean. Or maybe start soon and figure out what to do when we face that issue.

C47D avatar Sep 13 '21 15:09 C47D

If we use tags and we are already on v8.4 we can't push a fix to v8.1 easily . So I think using branches is more versatile.

kisvegabor avatar Sep 13 '21 15:09 kisvegabor

That's true, I didn't see that case. Should we create a new branch per release or just when we need a change?

C47D avatar Sep 13 '21 15:09 C47D

IMO we should create the branches on releases. It also allow people to simply choose a branch an occasionally pul l it to see they are any updates.

For example for cases like this I find a good approach to have driver in the lvgl repo.

kisvegabor avatar Sep 13 '21 16:09 kisvegabor

I see, we can try that. For having the drivers in the lvgl repo i think we still need some time to mature it.

C47D avatar Sep 13 '21 16:09 C47D

I still believe it'd be better to these repos closer and develop drivers in a dedicated branch, but it's not critical. So I'm ok with keep it here too :slightly_smiling_face:

I wonder it'd be easier build the architecture if we had a clean start with only one display and touch controller and add the rest later. What do you think?

kisvegabor avatar Sep 13 '21 16:09 kisvegabor

I don't know how many people depend on this repo, I think it's better to cleanup the code base as we go.

A personal preference is move fast, maybe break a thing, and fix it quickly, there's a word for thinking too much what you want to do instead of just do it but I can't remember it right now.

C47D avatar Sep 13 '21 17:09 C47D

For the architecture my preference would be to see a clean and minimal picture about how things are organized. But probably you will do more work here so let's do it as it's better for you.

kisvegabor avatar Sep 13 '21 17:09 kisvegabor