Skip to content

Commit

Permalink
Merge pull request #652 from feder-cr/release/v11.01.2024
Browse files Browse the repository at this point in the history
Release PR - Release/v11.01.2024
  • Loading branch information
surapuramakhil authored Nov 3, 2024
2 parents 1cecff3 + 92f5ce3 commit c0b2be0
Show file tree
Hide file tree
Showing 26 changed files with 644 additions and 242 deletions.
8 changes: 5 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
# application files and logs
/generated_cv
/data_folder/secrets.yaml
/log/*

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
Expand Down Expand Up @@ -159,6 +164,3 @@ venv.bak/

# Mono Auto Generated Files
mono_crash.*

/generated_cv
data_folder/secrets.yaml
152 changes: 140 additions & 12 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,33 @@
# Contributing to Auto_Jobs_Applier_AIHawk

## Table of Contents

- [Issue Labels](#issue-labels)
- [Bug Reports](#bug-reports)
- [Feature Requests](#feature-requests)
- [Branch Rules](#branch-rules)
- [Version Control](#version-control)
- [Release Process](#release-process)
- [Roles](#roles)
- [Pull Request Process](#pull-request-process)
- [Code Style Guidelines](#code-style-guidelines)
- [Development Setup](#development-setup)
- [Testing](#testing)
- [Communication](#communication)
- [Development Diagrams](./docs/development_diagrams.md)

Thank you for your interest in contributing to Auto_Jobs_Applier_AIHawk. This document provides guidelines for contributing to the project.

## Issue Labels

The project uses the following labels:

- **bug**: Something isn't working correctly
- **enhancement**: New feature requests
- **good first issue**: Good for newcomers
- **help wanted**: Extra attention needed
- **documentation**: Documentation improvements

## Bug Reports

When submitting a bug report, please include:
Expand All @@ -23,37 +49,139 @@ For feature requests, please:
- Explain your motivation for the feature
- List any alternatives you've considered

## Branch Rules

- `main` - Production-ready code, protected branch
- `develop` - Integration branch for features
- `feature/*` - New features
- `release/*` - Release preparation
- `bugfix/*` - Bug fixes for development
- `hotfix/*` - Emergency production fixes

## Version Control

- Semantic versioning: `vMAJOR.MINOR.PATCH`
- Release tags on `main` branch only
- Package versions match git tags

## Release Process

week one for `release/v4.1.0`

- Planning meeting for `release/v4.1.0` with release scope and milestone objectives set by the maintainers. Release and maintainer meeting agendas and schedules are posted on the project repository [wiki](https://github.com/AIHawk/AIHawk/wiki) and shared in the `#releases` channel on Discord.
- `release/v4.0.0` release candidate ready for release
- `release/v4.0.0` merge into `develop`, `main`
- tag `main` as `release/v4.0.0`
- `release/v4.0.0` published to AIHawk/releases and PyPI as a package with release documentation
- delete `release/v4.0.0` branch

release/v4.1.0 release weeks

- Contributers work on issues and PRs, prioritizing next milestone
- Maintainers review PRs from `feature/*`, `bugfix/*` branches and issues, merging into `develop`
- Maintainers review PRs from `hotfix/*` branches and issues, merged into `main` and `develop`, `main` tagged and merged into `4.0.1` package and `release/v4.0.1` and `release/v4.1.0`, documentation is updated

last week, release candidate

- `develop` is frozen, only bug fixes
- create release branch `release/v4.1.0` from `develop`
- only bug fixes are merged into `release/v4.1.0`
- additional testing and release candidate review

week one is repeated for `release/v4.2.0`

```mermaid
gantt
title Release Cycle Process
dateFormat YYYY-MM-DD
section Retro/Plan
Planning release/v4.1.0 : 2025-01-01, 2d
Publish release/v4.0.0 :milestone, m1, 2025-01-01, 1d
section Dev Cycle
Feature Development :2025-01-03, 27d
PR Reviews :2025-01-03, 27d
section Release
Freeze develop :milestone, m3, 2025-01-30, 1d
Create release/v4.1.0 :milestone, m4, 2025-01-30, 1d
Bug Fixes Only :2025-01-30, 2d
RC Testing :2025-01-30, 2d
section Next Cycle
Skip Weekend :2025-02-01, 2d
Planning release/v4.2.0 :2025-02-03, 2d
Publish release/v4.1.0 :milestone, m4, 2025-02-03, 1d
```

## Roles

### Organization Owner

- Has full access to all repositories
- Controls organization-wide settings and permissions
- Can set base permissions for all members
- Manages repository settings and collaborator access

### Release Manager

- Creates and manages release branch from develop
- Coordinates release cycles and versioning
- Merges release into main

### Maintainer

- Reviews and approves develop, feature PRs
- Triage issues, bugs, PRs
- Manages feature, bugfix PRs merge into develop
- Leads feature development, bug prioritization
- Manages README, CONTRIBUTING, and other documentation

### Moderator

- Moderates Telegram, Discord channels
- Manages project wiki
- Contributes to README, CONTRIBUTING, and other documentation

### Contributor

- Creates feature branches from develop
- Implements new features, bug fixes, and other changes
- creates PRs on features
- Collaborates with other developers on features

## Pull Request Process

1. Fork the repository
2. Create a new branch for your feature/fix
2. Create a new branch for your feature or bug
3. Write clear commit messages
4. Update documentation as needed
5. Submit a pull request with a clear description
5. Add tests for new functionality
6. Ensure tests pass
7. Submit a pull request with a clear description

## Merging Pull Requests

- All PRs are reviewed by maintainers
- At least 2 Maintainers approve PRs for merge
- PRs are merged into `develop`
- PRs are tested and verified to work as expected

## Code Style Guidelines

- Follow PEP 8 standards for Python code
- Include docstrings for new functions and classes
- Add comments for complex logic
- Maintain consistent naming conventions
- Security best practices
- Any performance considerations

## Development Setup

1. Clone the repository
2. Install dependencies from requirements.txt
3. Set up necessary API keys and configurations

## Issue Labels

The project uses the following labels:

- **bug**: Something isn't working correctly
- **enhancement**: New feature requests
- **good first issue**: Good for newcomers
- **help wanted**: Extra attention needed
- **documentation**: Documentation improvements

## Testing

Before submitting a PR:
Expand Down
20 changes: 18 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@

Connect with like-minded individuals and get the most out of AIHawk.

💡 **Get support:** Ask questions, troubleshoot issues, and find solutions.
💡 **Get support:** ask questions, seek help, review resume, application tips for making successfull applciation in landing interviews

🗣️ **Share knowledge:** Share your experiences, tips, and best practices.

Expand Down Expand Up @@ -182,9 +182,19 @@ This file contains sensitive information. Never share or commit this file to ver
This file defines your job search parameters and bot behavior. Each section contains options that you can customize:

- `remote: [true/false]`

- Set to `true` to include remote jobs, `false` to exclude them

- `hybrid: [true/false]`

- Set to `true` to include remote jobs, `false` to exclude them

- `onsite: [true/false]`

- Set to `true` to include remote jobs, `false` to exclude them

- `experienceLevel:`

- Set desired experience levels to `true`, others to `false`

- `jobTypes:`
Expand Down Expand Up @@ -510,7 +520,7 @@ Each section has specific fields to fill out:
requires_uk_visa: "No"
legally_allowed_to_work_in_uk: "Yes"
requires_uk_sponsorship: "No"
```
```

- `work_preferences:`
- Specify your preferences for work arrangements and conditions.
Expand Down Expand Up @@ -722,6 +732,12 @@ Auto_Jobs_Applier_AIHawk provides a significant advantage in the modern job mark

Auto_Jobs_Applier_AIHawk is still in beta, and your feedback, suggestions, and contributions are highly valued. Feel free to open issues, suggest enhancements, or submit pull requests to help improve the project. Let's work together to make Auto_Jobs_Applier_AIHawk an even more powerful tool for job seekers worldwide.

## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=feder-cr/Auto_Jobs_Applier_AIHawk&type=Date)](https://star-history.com/#feder-cr/Auto_Jobs_Applier_AIHawk&Date)

If you like the project please star ⭐ the repository!

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
Expand Down
16 changes: 7 additions & 9 deletions app_config.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
# In this file, you can set the configurations of the app.

"""
MINIMUM_LOG_LEVEL can only be one of the followings:
- "DEBUG"
- "INFO"
- "WARNING"
- "ERROR"
- "CRITICAL"
"""
MINIMUM_LOG_LEVEL = "DEBUG"
from constants import DEBUG, LOG_TO_CONSOLE, LOG_TO_FILE, MINIMUM_LOG_LEVEL

LOG_CONFIG = {
MINIMUM_LOG_LEVEL: DEBUG,
LOG_TO_FILE: True,
LOG_TO_CONSOLE: True
}

MINIMUM_WAIT_TIME = 60
9 changes: 9 additions & 0 deletions constants.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
DEBUG = "DEBUG"
INFO = "INFO"
WARNING = "WARNING"
ERROR = "ERROR"
CRITICAL = "CRITICAL"

MINIMUM_LOG_LEVEL = "MINIMUM_LOG_LEVEL"
LOG_TO_FILE = "LOG_TO_FILE"
LOG_TO_CONSOLE = "LOG_TO_CONSOLE"
16 changes: 9 additions & 7 deletions data_folder/config.yaml
Original file line number Diff line number Diff line change
@@ -1,27 +1,29 @@
remote: true
hybrid: true
onsite: true

experienceLevel:
experience_level:
internship: false
entry: true
associate: true
mid-senior level: true
mid_senior_level: true
director: false
executive: false

jobTypes:
full-time: true
job_types:
full_time: true
contract: false
part-time: false
part_time: false
temporary: true
internship: false
other: false
volunteer: true

date:
all time: false
all_time: false
month: false
week: false
24 hours: true
24_hours: true

positions:
- Software engineer
Expand Down
2 changes: 2 additions & 0 deletions data_folder_example/config.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
remote: true
hybrid: true
onsite: true

experienceLevel:
internship: false
Expand Down
Loading

0 comments on commit c0b2be0

Please sign in to comment.