wiki:GoogleSummerCode2022

Version 4 (modified by robe, 3 years ago) ( diff )

--

Google Summer of Code 2022 =

Introduction

So you are interested in becoming a Google Summer of Code student. What should you do to improve your chances of being selected? We recommend reading

Improving your chances

For most projects involving PostGIS you will eventually need the following:

  • Know how to install PostgreSQL
  • Know how to install PostGIS in PostgreSQL
  • Know how to compile PostgreSQL code
  • Know how to compile PostGIS code and run tests
  • Some basic knowledge of git -- at least how to do a git clone, git push, git pull and pull requests

While you can learn to do these things and ask questions, we would prefer students to know these before starting on a PostGIS project.

Idea 1: Augment pgAdmin to support importing and exporting shapefiles

Expected outcome: Import Feature:

1) There should be a menu option in the pgAdmin browser tree whenever you right-click a database, table, or schema that allows you to import or export Dbase/shapefiles. 2) The tool would use the shp2pgsql and pgsql2shp commandlines that are part of the PostGIS source code in much the same way the backup and restore data browse menu options built into pgAdmin utilizes pg_dump / pg_restore. It will look for the files in default runtime folder or user specified binary path.

3) If a particular table is selected, it will give option to export as a Dbase/Shapefile or import (append to) (no need to ask for table aside from export/import path) or append to 4) If no table is selected - it will pop up a list of tables (as show in export screenshot) and allow user to import a file as a table in currently selected schema. If no schema is selected it would load in the default schema.

This is to replace in newer pgAdmin 4 6.5+ the shp2pgsql-gui plugin (which still exists but is standalone) that was hosted as a plugin in pgAdmin3. Here is a screen shot of what the old guis looks like. We want to achieve the same or similar functionality

Import

Export

Skills required:

python, html, css, and javascript, ability to compile PostgreSQL code, ability to compile PostGIS code, ability to compile pgAdmin

some familiarity with PostGIS, PostgreSQL, and pgAdmin is preferable

Mentors: Regina Obe

Difficulty: Medium

Student Test:

  1. git clone code from PostgreSQL and compile
  2. git clone PostGIS code from one of Git repos and compile
  3. git clone code from pgAdmin4 and compile
  4. Create a working PostgreSQL database with postgis extension installed and shp2pgsql/pgsql2shp installed on system you are running pgAdmin4 on.
  5. Setup a public fork of pgAdmin repo for your work (can be osgeo, gitlab, github, or any other repo you can make available for public review)

Since the above is all work in pgAdmin, installing PostGIS / postgis commandline tools from a repository is equally acceptable to doing (1,2)

Attachments (5)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.