Skip to content

Commit d4b2570

Browse files
committed
update CONTRIBUTING.md
1 parent fb32380 commit d4b2570

File tree

1 file changed

+23
-38
lines changed

1 file changed

+23
-38
lines changed

CONTRIBUTING.md

Lines changed: 23 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
# Contributing Guideline
22

3-
Thank you for your interest in contributing to this project! We welcome contributions from everyone, whether it's reporting an issue, submitting a pull request, or suggesting improvements.
4-
3+
Thank you for your interest in contributing to meta contract! We welcome contributions from everyone, whether it's reporting an issue, submitting a pull request, or suggesting improvements.
54

65
## Reporting Issues
6+
77
If you encounter a bug or have a feature request, please use the provided templates when [opening a new issue](https://github.com/metacontract/mc/issues/new/choose). This helps us address your concerns more effectively.
88

99
## Development Workflow
1010

1111
### Submitting Pull Requests
12+
1213
When submitting a Pull Request (PR), please keep in mind the following:
1314

1415
- PRs that contain backward-compatible bug fixes or minor changes will generally be merged directly.
@@ -18,63 +19,47 @@ When submitting a Pull Request (PR), please keep in mind the following:
1819
<details>
1920
<summary>How to submit PR</summary>
2021

21-
1. Fork the repository and create a new branch for your feature or bug fix.
22+
1. Fork the repository and create a new branch from the `main` branch for your feature or bug fix.
2223
2. Make your changes and commit them with descriptive commit messages.
2324
3. Push your changes to your forked repository.
24-
4. Open a new pull request against the main repository, describing your changes in detail.
25-
</details>
26-
27-
28-
### Coding Style
29-
We adhere to the [Solidity Style Guide](https://docs.soliditylang.org/en/latest/style-guide.html) for maintaining a consistent and readable codebase. When contributing to this project, please follow the Solidity Style Guide with the exceptions and additions.
25+
4. Open a new pull request against the `main` branch of the main repository, describing your changes in detail.
26+
5. Ensure your branch is up to date with the `main` branch before requesting a review.
27+
6. Address any review comments and make necessary changes.
28+
7. Once approved, the PR will be merged into the `main` branch.
3029

31-
To ensure consistent formatting, we use [forge fmt](https://book.getfoundry.sh/reference/forge/forge-fmt), a built-in code formatter for Foundry projects. Please run `forge fmt` before submitting your pull request. Our CI pipeline will check the formatting of your code using `forge fmt --check`.
30+
</details>
3231

3332

34-
### Release Process
35-
This document outlines the release process for our project, including the types of releases, planning, preparation, execution.
33+
### Documentation Style and Format
3634

37-
- **Major Release**: Includes significant new features or backward-incompatible changes.
38-
- **Minor Release**: Includes small new features or improvements.
39-
- **Patch Release**: Includes bug fixes and backward-compatible changes.
35+
- Follow the Markdown formatting guidelines as outlined in the [Documentation Guidelines](https://mc-book.ecdysis.xyz/guides/project-management/documentation-guidelines).
36+
- Use kebab-case for all documentation file names.
4037

41-
#### 1. Create a release branch
42-
A new release branch is created from the main branch, using the naming convention `release/vX.Y.Z`, where `X.Y.Z` represents the version number.
38+
### Coding Style
4339

44-
- Major/Minor Release
45-
1. Create a "New Release" issue to clarify the release plan.
46-
2. Create a release branch.
47-
3. Review and merge related Pull Requests into the release branch.
48-
- Patch Releases
49-
1. Review a related Pull Request.
50-
2. A maintainer creates a patch release branch.
51-
3. Merge into the patch release branch.
52-
- Individual Pull Requests can be merged on an ongoing basis.
53-
- Combine multiple PRs into a single _Patch Release Brabch_ if needed.
54-
- For critical patches, a "New Release" issue may be created, but generally, a lightweight process will be followed.
40+
- Adhere to the [Solidity Style Guide](https://docs.soliditylang.org/en/latest/style-guide.html) with project-specific additions as outlined in the [Coding Standards](https://mc-book.ecdysis.xyz/guides/project-management/coding-standards).
41+
- Use `forge fmt` for consistent code formatting.
5542

56-
[*] If necessary, create branch and validate a Release Candidate (RC).
43+
### Test Strategy
5744

58-
#### 2. Preparation
59-
1. Update the [CAHNGELOG](./CHANGELOG.md).
60-
2. [Create release notes](https://github.com/metacontract/mc/releases/new).
61-
3. A new git tag is created and chosen for the release, using the naming convention `vX.Y.Z`.
45+
- Follow the comprehensive test strategy outlined in the [Test Strategy](https://mc-book.ecdysis.xyz/guides/project-management/test-strategy).
46+
- Write unit tests for all functions and ensure high code coverage.
6247

63-
#### 3. Publication
64-
1. Publish release notes.
65-
2. Announce the release to the community through our designated communication channels.
66-
3. For information about upcoming releases and planned features, please refer to our [GitHub Issues](https://github.com/metacontract/mc/issues).
48+
### Release Process
6749

68-
Please note that only project maintainers have the authority to create releases and merge changes into the main branch.
50+
- Follow the branching and release strategy as outlined in the [Branching and Release Strategy](https://mc-book.ecdysis.xyz/guides/project-management/branching-and-release-strategy).
51+
- Use Semantic Versioning for all releases.
6952

7053

7154
### Versioning Policy
55+
7256
This project follows [Semantic Versioning](https://semver.org/) and uses version numbers in the format _MAJOR.MINOR.PATCH_.
7357
- Version number updates will be determined and applied by the assigned maintainer(s).
7458

7559
* For the initial v0.1.0 release, we expect to make frequent breaking changes.
7660

7761
### Changelog
62+
7863
A changelog will be maintained in [CHANGELOG.md](./CHANGELOG.md) to document all notable changes in each version.
7964

8065
- Changelog entries should follow the [Keep a Changelog](https://keepachangelog.com/) format.

0 commit comments

Comments
 (0)