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

Add MakeFile to ease development process #162

Open
PradyumnaKrishna opened this issue Mar 5, 2022 · 11 comments
Open

Add MakeFile to ease development process #162

PradyumnaKrishna opened this issue Mar 5, 2022 · 11 comments
Assignees
Labels
gssoc22 Level2 Bug fixing, adding small features.

Comments

@PradyumnaKrishna
Copy link
Member

🚀 Feature

Create a MakeFile to simplify project setup and ease the development process.
It requires #161 to complete, so pickup that or wait for it to complete before start working on this.

Resources

  1. https://makefiletutorial.com

Feel free to contact me for help.

@PradyumnaKrishna PradyumnaKrishna added gssoc22 Level2 Bug fixing, adding small features. labels Mar 5, 2022
@shreelakshmijoshi
Copy link

Hi @PradyumnaKrishna! Would you assign me this issue under GSSOC?

@PradyumnaKrishna
Copy link
Member Author

Done @shreelakshmijoshi

@dhruti29
Copy link

Hello, @PradyumnaKrishna I want work on this issue please assign me this issue under GSSOC...!!

@GouravSardana
Copy link
Member

@dhruti29 , Please go ahead

@shreelakshmijoshi
Copy link

Hi @GouravSardana !
I want to understand a bit more about Make files. What exact dependencies/ file names should we include in the Make file to compile them?
Also, in the make file resource provided, it is mentioned

Interpreted languages like Python, Ruby, and Javascript don't require an analogue to Makefiles.

And dynamic-cli has all Python files.

@GouravSardana
Copy link
Member

@PradyumnaKrishna is leading the effort from this side. Can you please explain what we need from our side ?

@shreelakshmijoshi
Copy link

shreelakshmijoshi commented Mar 27, 2022

oh okay, I just wanted to know what exact files should I include in the Make file to compile them?
Since, only C/C++, Java files need compiling and Python files don't need compiling is mentioned in https://makefiletutorial.com/

@GouravSardana
Copy link
Member

I agree with the point which you mentioned but let’s hear from @PradyumnaKrishna

@PradyumnaKrishna
Copy link
Member Author

Makefile does lot more than just compiling, currently this repository has lot of commands that can be aggregated at one place.

Let me give you an example

all: setup lint test build

setup:
	@echo SETUP
	pip install -r requirements.txt

lint:
	@echo LINT
	# Linting it using linters like black, pylint etc

test:
	@echo TEST
	pytest

build:
	@echo BUILD
	...

publish:
	@echo PUBLISH
	...
...

These all tasks and other similar tasks will get collected to one place. Currently we have to follow up the procedure to setup the development environment. After implementing Makefile, environment setup and package build will get done in one go, just have to type make.

Note: #161 is work in progress which add poetry as dependency manager, the procedure to setup the development environment requires some changes after that.

@shreelakshmijoshi
Copy link

shreelakshmijoshi commented Mar 27, 2022

@PradyumnaKrishna, you're right.

@harshsingh32
Copy link

I would like to work on this issue, please assign this issue to me under GSSoC'23.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
gssoc22 Level2 Bug fixing, adding small features.
Projects
None yet
Development

No branches or pull requests

5 participants