-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
chore(docs): Improve local installation guide #7320
chore(docs): Improve local installation guide #7320
Conversation
Codecov Report
@@ Coverage Diff @@
## development #7320 +/- ##
===============================================
+ Coverage 64.12% 64.18% +0.05%
===============================================
Files 259 259
Lines 13086 13126 +40
===============================================
+ Hits 8392 8425 +33
- Misses 4694 4701 +7
Continue to review full report at Codecov.
|
sudo apt-get install python3.7 | ||
virtualenv -p python3.7 venv | ||
. venv/bin/activate | ||
xargs -a deb-packages.txt sudo apt install |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should keep the dependencies explicitly listed here to avoid indirection and it's easier to track updates as well
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But this deb-packages.txt
will help deploy process, it allows deploy script to automatically install new dependency if it is added.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've just added a note to README, to let developer know that the list of dependencies are in that file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since we use docker alpine to build the image, it doesn't help us in deployment particularly. Where else is it being used to install the dependencies?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@iamareebjamal If you write down:
sudo apt install libpq-dev
brew install python@3
as before this PR, does it help you build Alpine Docker container?
The old README doesn't help you build Alpine Docker container, why do you use Alpine as excuse to refuse this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But this deb-packages.txt will help deploy process, it allows deploy script to automatically install new dependency if it is added.
I was commenting about this. Since we use alpine builds, debian dependencies don't help us in deployment process. Never said that the current docs help us in deployment process. Since, a separate file does not help us in the deployment process, why do we need to add an extra file and an indirection. Any change should have a net positive impact in the maintenance and developer experience.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
debian dependencies don't help us in deployment process
This PR doesn't interfere the deployment process. It is addressing the "local installation guide". Before this PR, the documentation is guiding beginner to setup development environment on Ubuntu/Debian, and this PR still focus on it.
If you want to improve deployment process, let's do it in separate PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add an extra file and an indirection
That extra file is to help developer install dependencies in one command, and also, if the dependencies list grows over time, it just make that file grow instead of this document. If you concern about list of packages staying in separate file, why don't you concern the requirements.txt, which is also a separate file to list dependencies?
```sh | ||
sudo apt-get update | ||
sudo apt-get install postgresql postgresql-contrib | ||
xargs -a deb-packages.txt sudo apt install |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The repo is not cloned at this point. People will copy paste the command and be greeted with an error
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then I move this command down to after "cloning".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This part is already after "cloning".
Other that the pull rebase command, other changes LGTM |
Not to confuse beginner
"rebase" instead of "merge". Co-authored-by: Areeb Jamal <[email protected]>
Fixes #
Short description of what this resolves:
This PR is to improve installation guide for development.
After this PR, another improvement in settings system should be added to make our software adapt better with different Postgres connection methods for various circumstance. For example:
Changes proposed in this pull request:
virtualenvwrapper
for creating virtual environment (explanation is included).Checklist
development
branch.