Re: [pgadmin-hackers][pgaweb][patch] Website patch to add SCSS - Mailing list pgadmin-hackers

From George Gelashvili
Subject Re: [pgadmin-hackers][pgaweb][patch] Website patch to add SCSS
Date
Msg-id CAHowoHbVvypWwmvoPy_Yg9qASE3QnvYDqGhUKiYBg_1q+653dg@mail.gmail.com
Whole thread Raw
In response to Re: [pgadmin-hackers][pgaweb][patch] Website patch to add SCSS  (Dave Page <dpage@pgadmin.org>)
Responses Re: [pgadmin-hackers][pgaweb][patch] Website patch to add SCSS
List pgadmin-hackers
Hi Dave,
 
Hmm, seems like the dependencies are broken. Adding them throws me down what seems like a rabbit hole of manual installation, starting with:

(pgaweb) piranha:pgaweb dpage$ pip install -r requirements.txt 
Requirement already satisfied: Django==1.8.18 in /Users/dpage/.virtualenvs/pgaweb/lib/python2.7/site-packages (from -r requirements.txt (line 1))
Requirement already satisfied: psycopg2==2.7.1 in /Users/dpage/.virtualenvs/pgaweb/lib/python2.7/site-packages (from -r requirements.txt (line 2))
Collecting libsass==0.13.2 (from -r requirements.txt (line 3))
  Using cached libsass-0.13.2.tar.gz
Could not import setuptools which is required to install from a source distribution.
Traceback (most recent call last):
  File "/Users/dpage/.virtualenvs/pgaweb/lib/python2.7/site-packages/pip/req/req_install.py", line 387, in setup_py
    import setuptools  # noqa
  File "/Users/dpage/.virtualenvs/pgaweb/lib/python2.7/site-packages/setuptools/__init__.py", line 10, in <module>
    from six.moves import filter, map
ImportError: No module named six.moves

Perhaps the entire dependency tree should be added to requirements.txt?
 

What version of pip runs in your pyenv? We're able to pip install requirements inside a new 2.7.10 virtualenv, that gets created with pip 9.0.1 by default.
 
- Scripts to yarn to compile the SCSS and run the application 
- Add startapp.sh script to start the application

The application runs under uWSGI - it's not going to be started via a script. It's auto-updated periodically from git, and uWSGI will restart when necessary so if any pre-processing of files is required, that needs to be done at startup automatically.

Okay, so it sounds like shelling out to yarn in wsgi would resolve this. Otherwise, what does the auto-update process look like? perhaps compilation steps belong there rather than in app startup. Also, unless a restart needs to pick up changes separately from those checked into the repo, the app should be able to restart with static pre-compiled resources.
 
- The "Add initial pgAdmin4 version" should be changed to describe loading the fixture data from each of the various modules that seed the database. e.g.

./manage.py loaddata ./download/fixtures/packages.json
./manage.py loaddata ./download/fixtures/distributions.json
./manage.py loaddata ./download/fixtures/versions.json
./manage.py loaddata ./download/fixtures/downloads.json
./manage.py loaddata ./faq/fixtures/categories.json
./manage.py loaddata ./faq/fixtures/faqs.json
./manage.py loaddata ./news/fixtures/news.json
./manage.py loaddata ./versions/fixtures/versions.json 
 
- s/PGAdmin/pgAdmin

- We can remove the part about using sqlite for the DB. This is a Postgres project after all :-)

Changed.

Thanks,
George and Shruti
Attachment

pgadmin-hackers by date:

Previous
From: Dave Page
Date:
Subject: Re: [pgadmin-hackers] [Design update] Style guide for pgAdmin4
Next
From: Neel Patel
Date:
Subject: [pgAdmin4][runtime]: Fix RM #2558