liormizr / s3path

s3path is a pathlib extension for AWS S3 Service
Apache License 2.0
207 stars 39 forks source link

Is there a changelog? #54

Closed impredicative closed 3 years ago

impredicative commented 3 years ago

Going forward, I think it'll help to maintain a changelog. Without a changelog, it is in general more difficult to understand the notable changes from one released version to another.

liormizr commented 3 years ago

Hi @impredicative, I agree with you 100%!

Is there a way to do automation for deployment / release / tag / changelog? Or do you think about jest a simple changelog file?

In any case, can you help here with this task?

impredicative commented 3 years ago

Hi @liormizr . I have seen different users automate releases in different ways. I don't think there is one standard way afaik. In my Python package bitlyshortener, for example, I have a GitHub Action which publishes to PyPI whenever I create a new release. In there I note the changelog in the release notes when creating the release. For s3path though, there is also a conda release which is important, so that would have to be an extra step in the release. Using this approach, at least I ensure clean releases, avoiding any release from my laptop. I see s3path is currently using travis.

Regarding the changelog, I always type it manually, keeping it interesting for the end user. I skip information that is not relevant to the end user. Thank you.

liormizr commented 3 years ago

Thanks @impredicative I'll start to research about deployments with Travis When we'll have a proper deployment process I'll add a proper changelog as well.

I'll update this card when I'll have something for feedback

liormizr commented 3 years ago

@impredicative we created a realese process With automation deployment with Travis

From the next version we will have changelog :-)

See example here

impredicative commented 3 years ago

Looks nice. Is the version string updated manually?

https://github.com/liormizr/s3path/blob/c5e299eeaf41470c9f73abf10a688acb76b627eb/s3path.py#L25

Maybe it can be read from a file, and this file can be updated automatically during the release process. If it's manual, there is a chance of forgetting to update it, and then the publish to PyPI will fail.

In my package where I use a GitHub Action, I have it read dynamically, although my use is different, and it wouldn't apply 1:1 here.

liormizr commented 3 years ago

Thanks for the feedback @impredicative

Update the version automatically - I need to think about it there are pros and cons to this approach