Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Submission of Team 3 #2

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

isiddharthsingh
Copy link

Teammates:
Siddharth Singh - [email protected]
Adittya Mittal - [email protected]
Anushka Tawte - [email protected]
Rafael de Leon - [email protected]
Alex Ying - [email protected]
Mridul Mittal - [email protected]

@kyotov
Copy link
Collaborator

kyotov commented Oct 6, 2024

this is good overall
i put some comments on -- please review and let me know when you have addressed them

@kyotov
Copy link
Collaborator

kyotov commented Oct 9, 2024

are you guys planning to address any of the above?

@kyotov
Copy link
Collaborator

kyotov commented Oct 9, 2024

as is, i tentatively grade this at 85%

@kyotov kyotov closed this Oct 9, 2024
@kyotov kyotov reopened this Oct 9, 2024
@kyotov
Copy link
Collaborator

kyotov commented Oct 9, 2024

.

@kyotov kyotov self-assigned this Oct 9, 2024
README.md Outdated

## Project Description
**mAIgic** is a project focused on setting up testing, static analysis, and continuous integration (CI) using tools such as `pytest`, `ruff`, `mypy`, and CircleCI. It aims to automate quality checks, ensuring code correctness and adherence to best practices.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that's not what the project is... it is an AI assistant, right?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes its an Ai assistant. for the start of the task we thought this is what we are doing and wrote the first readme and as we move ahead, we will make changes to the readme.

should we change it be an Ai Assistant?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, let's change it.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This has been changed.

Use `ruff` to run static analysis (linting) on your code:
```bash
ruff check .
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what checks are enabled?
can we make sure all checks are enabled?
discuss which checks you need to disable because they did not make sense.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

select = ["E", "F", "W"]:
This is selecting the following categories of checks:
E: PEP 8 style errors (e.g., indentation, whitespace issues)
F: PyFlakes checks (e.g., undefined names, unused variables)
W: PEP 8 style warnings (e.g., line breaks around operators)

Do you want us to enable all the checks?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you enable all the checks and then tell me which ones are too pesky and you felt like you wanted to disable?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have enabled all the checks.

To perform static type checking using `mypy`, run:
```bash
mypy .
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what checks are enabled?
can we make sure all checks are enabled?
discuss which checks you need to disable because they did not make sense.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In our mypy.ini, these following checks are enabled:

python_version = 3.8: This specifies that mypy will assume your project is using Python 3.8. Any type hints or language features not supported by Python 3.8 will raise an error.

ignore_missing_imports = True: This setting tells mypy to ignore any missing type stubs (type information) for third-party libraries that do not have type hints. This prevents mypy from raising errors about missing types in libraries that aren’t type-annotated.

do you want us to include any specific checks?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i would lean towards enabling all available checks and then disabling ones that don't make sense.
let's also do latest version of python..,.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have made made the changes to python version and have changed to enable all the checks

README.md Outdated
name: Install dependencies
command: |
pip install pytest ruff mypy
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same thing here -- it is not a great idea to repeat yourself.
otherwise when you add a new package you need you have to put it on multiple places

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we will update this

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this has been removed.

1. **Missing Dependencies**: If any dependency-related issues arise, ensure all dependencies are installed by running:
```bash
pip install -r requirements.txt
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is better!
why mention the packages up there literally?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will remove the mention of packages from there

mypy.ini Outdated
@@ -0,0 +1,3 @@
[mypy]
python_version = 3.8
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

any reason we are not going with 3.12+?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seems like you have 3.12 in your pyproject.toml

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no specific reason for the mypy file I found it from stack overflow and wrote that. we will make the changes to use the correct python version

- run:
name: Install dependencies
command: |
pip install pytest ruff mypy
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did you decide against uv?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

might have missed it. we will rectify it.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this has been changed.

Copy link
Collaborator

@kyotov kyotov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please address all comments and let me know when you are ready for me to take another look!

README.md Outdated

## Project Description
**mAIgic** is a project focused on setting up testing, static analysis, and continuous integration (CI) using tools such as `pytest`, `ruff`, `mypy`, and CircleCI. It aims to automate quality checks, ensuring code correctness and adherence to best practices.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, let's change it.

Use `ruff` to run static analysis (linting) on your code:
```bash
ruff check .
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you enable all the checks and then tell me which ones are too pesky and you felt like you wanted to disable?

To perform static type checking using `mypy`, run:
```bash
mypy .
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i would lean towards enabling all available checks and then disabling ones that don't make sense.
let's also do latest version of python..,.

@kyotov
Copy link
Collaborator

kyotov commented Nov 7, 2024

lets make sure we have src/maigic/... for the code so that the user can do from maigic.api import ...
also add api.py

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants