Skip to content

Commit

Permalink
[#56] Improve documentation for v0.2.0 (#101)
Browse files Browse the repository at this point in the history
Resolves #56

I've improved the documentation for `tool-sync` in a few ways:

* Rewrote README
* Added a CHAGELOG
* Slightly changed the CONTRIBUTING.md guide (now it requires to add new
changes in the changelog)
* Generated a new GIF with the new output
* Increased the version to `0.2.0`

I want to implement #54 and #55 before actually creating a release so
the CHANGELOG will change. But those changes shouldn't affect the
documentation so this one can be merged separately.

### Additional tasks

- [x] Documentation for changes provided/changed
- [ ] Tests added

Co-authored-by: Zixuan Zhang <[email protected]>
  • Loading branch information
chshersh and zixuan-x authored Sep 20, 2022
1 parent 51489f4 commit 89a7be2
Show file tree
Hide file tree
Showing 8 changed files with 318 additions and 83 deletions.
103 changes: 103 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning][1]. The changelog is also
available [on GitHub][2].

## [Unreleased]

## [0.2.0] — 2022-09-20 🔃

### Added

* [#57](https://github.com/chshersh/tool-sync/issues/57):
Adds the `install` command to install known tools
(by [@MitchellBerend][MitchellBerend])
**#CLI**
* [#52](https://github.com/chshersh/tool-sync/issues/52),
[#73](https://github.com/chshersh/tool-sync/issues/73):
Add the `default-config` command to generate the default `.tool.toml` file
with the tool version and all natively supported tools
(by [@MitchellBerend][MitchellBerend])
**#CLI** **#CONFIG**
* [#49](https://github.com/chshersh/tool-sync/issues/49),
[#63](https://github.com/chshersh/tool-sync/issues/63):
Output the exact tag of the downloaded tool
(by [@MitchellBerend][MitchellBerend])
**#OUTPUT**
* [#32](https://github.com/chshersh/tool-sync/issues/32):
Add tag option to download a specific tool version
(by [@FrancisMurillo][FrancisMurillo])
**#CONFIG**
* [#33](https://github.com/chshersh/tool-sync/issues/33):
Better `sync` output with estimated size, installation directory and early
errors
(by [@chshersh][chshersh])
**#OUTPUT**
* [#46](https://github.com/chshersh/tool-sync/issues/46):
Support syncing `tool-sync` by `tool-sync`
(by [@chshersh][chshersh])
**#CONFIG**
* [#87](https://github.com/chshersh/tool-sync/issues/87):
Produce statically linked binaries for linux
(by [@chshersh][chshersh])
**#DX** **#CD**
* [PR #73](https://github.com/chshersh/tool-sync/pull/73):
Adding the pre-commit config
(by [@MitchellBerend][MitchellBerend])
**#DX**
* [PR #74](https://github.com/chshersh/tool-sync/pull/74):
Added pull request template
(by [@MitchellBerend][MitchellBerend])
**#DX**
* [PR #81](https://github.com/chshersh/tool-sync/pull/81):
Better CI caching
(by [@chshersh][chshersh])
**#DX** **#CI**
* [#83](https://github.com/chshersh/tool-sync/issues/83):
Create `AssetError` and refactor `select_asset` function
(by [@zixuanzhang-x][zixuanzhang-x])
**#REFACTORING** **#OUTPUT**
* [#88](https://github.com/chshersh/tool-sync/issues/88):
Replace custom `display()` method with `std::fmt::Display` trait implementation
(by [@zixuanzhang-x][zixuanzhang-x])
**#REFACTORING**
* [#98](https://github.com/chshersh/tool-sync/issues/98):
Changed all formatting functions so they accept a type that implements `Display`
(by [@MitchellBerend][MitchellBerend])
**#REFACTORING**
* [PR #94](https://github.com/chshersh/tool-sync/pull/94):
Refactor commands into separate modules
(by [@chshersh][chshersh])
**#REFACTORING**

### Fixed

* [#54](https://github.com/chshersh/tool-sync/issues/54):
Adding extra lookup path inside asset. Additionally, added a new error message for the case where multiple assets are found
(by [@MitchellBerend][MitchellBerend])
**#SYNC** **#OUTPUT**

## [0.1.0] — 2022-08-29 🌇

Initial release prepared by [@chshersh][chshersh].

<!-- Contributors -->

[chshersh]: https://github.com/chshersh
[FrancisMurillo]: https://github.com/FrancisMurillo
[MitchellBerend]: https://github.com/MitchellBerend
[zixuanzhang-x]: https://github.com/zixuanzhang-x

<!-- Header links -->

[1]: https://semver.org/
[2]: https://github.com/chshersh/tool-sync

<!-- Versions -->

[Unreleased]: https://github.com/chshersh/tool-sync/compare/v0.2.0...HEAD
[0.2.0]: https://github.com/chshersh/tool-sync/releases/tag/v0.2.0
[0.1.0]: https://github.com/chshersh/tool-sync/releases/tag/v0.1.0
62 changes: 47 additions & 15 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# Contributing to tool-sync
# Contributing guide

This document describes contributing guidelines for the `tool-sync` project.
This document describes contributing guidelines for this project.

You're encouraged to read this document before your first contribution
to the project. Spending your time familiarising yourself with these
guidelines is much appreciated because following this guide ensures
the most positive outcome for contributors and maintainers! 💖
You're encouraged to read this document before your first contribution. I
appreciate your time spend familiarising yourself with these guidelines.
Following this guide ensures the most positive outcome for contributors and
maintainers! 💖

## How to contribute

Everyone is welcome to contribute as long as they follow our
[rules for polite and respectful communication](https://github.com/chshersh/tool-sync/blob/main/CODE_OF_CONDUCT.md)!

And you can contribute to `tool-sync` in multiple ways:
And you can contribute to this project in multiple ways:

1. Share your success stories or confusion moments in
[Discussions](https://github.com/chshersh/tool-sync/discussions).
Expand All @@ -22,19 +22,34 @@ And you can contribute to `tool-sync` in multiple ways:
with documentation improvements, changes to the code or even
implementation of desired changes!

If you would like to open a PR, **create the issue first** if it
doesn't exist. Discussing implementation details or various
architecture decisions avoids spending time inefficiently.
Or anything else! Be creative 🎨

## The golden rule of contribution

When unsure, follow this rule for contributing:

**Better ask than be sorry.**

To give some example:

+ Want to work on an existing issue but not sure if anyone works on it?
Feel free to ask in comments!
+ Want to work on an existing issue but not sure on which one?
Feel free to create a discussion and ask!
+ Want to contribute a patch but not sure if it's going to be merged?
**Create the issue first** if it doesn't exist and just ask!

> You may argue that sometimes it's easier to share your vision with
> exact code changes via a PR. Still, it's better to start a
> Discussion or an Issue first by mentioning that you'll open a PR
> later with your thoughts laid out in code.
> later with your thoughts laid out in code. Or, if you still prefer to open a
> PR first, please, clarify your intentions in the PR description.
If you want to take an existing issue, please, share your intention to
work on something in the comment section under the corresponding
issue. This avoids the situation when multiple people are working on
the same problem concurrently.
Discussing implementation details or various architecture decisions beforehand avoids spending time inefficiently.

Similarly, when you share your intention to work on something in the comment
section under the corresponding issue, it helps to avoid the situation when
multiple people are working on the same problem concurrently.

## Pull Requests requirements

Expand All @@ -46,6 +61,8 @@ implementation beforehand. However, there're still a few requirements:
[Code of Conduct](https://github.com/chshersh/tool-sync/blob/main/CODE_OF_CONDUCT.md).
2. The code should be formatted with `rustfmt` using formatting settings from
this project.
3. Add your changes to the `CHANGELOG.md` file under the `[Unreleased]` section
in the same format as other changes.

That's all so far!

Expand All @@ -54,6 +71,21 @@ That's all so far!
> to make the review easier or if it's your preferred workflow. But
> all commits will be squashed when merged to `main`.
## Response times

Maintainers of this project strive to respond to you contributions within a
week. Life happens, OSS maintainers also have their lives, so you still might
not get a timely response.

To keep the project moving and avoid having stale PRs and bug reports,
maintainers may decide to close them if they don't hear back from authors in a
week.

> It's okay to say that you're busy now and can only reply/finish properly
> later. But also keep in mind that your contributions might be rejected or
> replaced by someone or something else. Be mindful about other's time and
> capabilities. And be human 💞
## Write access to the repository

If you want to gain write access to the repository, open a
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "tool-sync"
version = "0.1.0"
version = "0.2.0"
authors = ["Dmitrii Kovanikov <[email protected]>"]
license = "MPL-2.0"
description = """
Expand Down
1 change: 0 additions & 1 deletion FUNDING.yml

This file was deleted.

Loading

0 comments on commit 89a7be2

Please sign in to comment.