Thread: community bonding
Hi PostgreSQL community and mentors:
Thanks for selecting my project as one of GSoC student projects! Pretty exciting and honor to join the development for PostgreSQL (the best database in the world :)). So for the first phase of this project (community bonding), I am planning to go ahead to set up my developing environment and familiar with the related code bases. And I have several questions regarding this.
1. What ide or command line tools do you guys used most for PostgreSQL development?
2. What version control do you use for postgres? Is github acceptable?
3. How do you look at code in PostgreSQL code base? do you have cross function reference where I can search function and definition online?
Also let me know if you have requirements in this phase which are not covered by my plan.
Thanks Charles.
On 24. 04. 2018 06:22, Charles Cui wrote: > Hi PostgreSQL community and mentors: > > Thanks for selecting my project as one of GSoC student projects! > Pretty exciting and honor to join the development for PostgreSQL (the > best database in the world :)). So for the first phase of this project > (community bonding), I am planning to go ahead to set up my developing > environment and familiar with the related code bases. And I have > several questions regarding this. Welcome! I'm not a commiter, but I've been looking at Postgres as a side project for a while now. You'll find that there's a lot to learn. > 1. What ide or command line tools do you guys used most for PostgreSQL > development? I've had most success with Eclipse. Metin Döşlü presented a talk at PGConf.EU on how to do that, but the slides[1] are not the most verbose, as he did a live demo. My key takeaway was that you can get the backend pid with pg_backend_pid() and then attach GDB in Eclipse. There's also a page on Eclipse on wiki[2]. > > 2. What version control do you use for postgres? Is github acceptable? Postgres uses GIT[3]. Github does host a mirror, however Postgres as a project uses its own git and uses patch based workflow, which is described on wiki[4]. > 3. How do you look at code in PostgreSQL code base? do you have cross > function reference where I can search function and definition online? There's a doxygen[5] available, but most of that can also be done in Eclipse. > > Also let me know if you have requirements in this phase which are not > covered by my plan. > > Thanks Charles. A thing to note is that Postgres mailing lists are not top-post, so please try not to do that. Wiki is a great resource. Kind regards, Gasper Zejn [1] https://www.postgresql.eu/events/pgconfeu2017/sessions/session/1605-hacking-postgresql-with-eclipse/ [2] https://wiki.postgresql.org/wiki/Working_with_Eclipse [3] https://www.postgresql.org/docs/current/static/git.html [4] https://wiki.postgresql.org/wiki/Submitting_a_Patch [5] https://doxygen.postgresql.org/
Hello Charles, > Thanks for selecting my project as one of GSoC student projects! Pretty > exciting and honor to join the development for PostgreSQL (the best > database in the world :)). Welcome! > 1. What ide or command line tools do you guys used most for PostgreSQL > development? Personally I prefer Vim. Sublime Text and Visual Studio Code are fine too. > 2. What version control do you use for postgres? Is github acceptable? Github is OK. > 3. How do you look at code in PostgreSQL code base? do you have cross > function reference where I can search function and definition online? Vim + Ctags. Editors like Sublime Text and Visual Studio Code have features like "goto definition" out-of-the-box. If you have any other questions please don't hesitate to ask! -- Best regards, Aleksander Alekseev
Attachment
Thanks Aleksander for your comments!
These are helpful!
2018-04-24 2:07 GMT-07:00 Aleksander Alekseev <a.alekseev@postgrespro.ru>:
Hello Charles,
> Thanks for selecting my project as one of GSoC student projects! Pretty
> exciting and honor to join the development for PostgreSQL (the best
> database in the world :)).
Welcome!
> 1. What ide or command line tools do you guys used most for PostgreSQL
> development?
Personally I prefer Vim. Sublime Text and Visual Studio Code are fine too.
> 2. What version control do you use for postgres? Is github acceptable?
Github is OK.
> 3. How do you look at code in PostgreSQL code base? do you have cross
> function reference where I can search function and definition online?
Vim + Ctags. Editors like Sublime Text and Visual Studio Code have
features like "goto definition" out-of-the-box.
If you have any other questions please don't hesitate to ask!
--
Best regards,
Aleksander Alekseev
Thanks Gasper for the information!
2018-04-23 22:41 GMT-07:00 Gasper Zejn <zejn@owca.info>:
On 24. 04. 2018 06:22, Charles Cui wrote:
> Hi PostgreSQL community and mentors:
>
> Thanks for selecting my project as one of GSoC student projects!
> Pretty exciting and honor to join the development for PostgreSQL (the
> best database in the world :)). So for the first phase of this project
> (community bonding), I am planning to go ahead to set up my developing
> environment and familiar with the related code bases. And I have
> several questions regarding this.
Welcome!
I'm not a commiter, but I've been looking at Postgres as a side project
for a while now. You'll find that there's a lot to learn.
> 1. What ide or command line tools do you guys used most for PostgreSQL
> development?
I've had most success with Eclipse. Metin Döşlü presented a talk at
PGConf.EU on how to do that, but the slides[1] are not the most verbose,
as he did a live demo. My key takeaway was that you can get the backend
pid with pg_backend_pid() and then attach GDB in Eclipse. There's also a
page on Eclipse on wiki[2].
>
> 2. What version control do you use for postgres? Is github acceptable?
Postgres uses GIT[3]. Github does host a mirror, however Postgres as a
project uses its own git and uses patch based workflow, which is
described on wiki[4].
> 3. How do you look at code in PostgreSQL code base? do you have cross
> function reference where I can search function and definition online?
There's a doxygen[5] available, but most of that can also be done in
Eclipse.
>
> Also let me know if you have requirements in this phase which are not
> covered by my plan.
>
> Thanks Charles.
A thing to note is that Postgres mailing lists are not top-post, so
please try not to do that.
Wiki is a great resource.
Kind regards,
Gasper Zejn
[1]
https://www.postgresql.eu/events/pgconfeu2017/sessions/ session/1605-hacking- postgresql-with-eclipse/
[2] https://wiki.postgresql.org/wiki/Working_with_Eclipse
[3] https://www.postgresql.org/docs/current/static/git.html
[4] https://wiki.postgresql.org/wiki/Submitting_a_Patch
[5] https://doxygen.postgresql.org/
On 24 April 2018 at 12:22, Charles Cui <charles.cui1984@gmail.com> wrote: > Hi PostgreSQL community and mentors: > > Thanks for selecting my project as one of GSoC student projects! Pretty > exciting and honor to join the development for PostgreSQL (the best database > in the world :)). So for the first phase of this project (community > bonding), I am planning to go ahead to set up my developing environment and > familiar with the related code bases. And I have several questions regarding > this. > 1. What ide or command line tools do you guys used most for PostgreSQL > development? Varies. vim, emacs, whatever editor you want. Some people use VS Code. Some use Eclipse. You could code on Windows in Visual Studio if you want, or XCode on Mac OS X. I use vim with a bunch of plugins. Whatever floats your boat, really, so long as you set it up to help you follow the coding conventions and source structure rules re tab/spaces etc. > 2. What version control do you use for postgres? Is github acceptable? git. But patches are emailed to the list. Github is fine, but we don't use its pull request facilities, and the PostgreSQL source on github is a mirror of git.postgresql.org. The stuff about context diff on the wiki is pretty outdated, I think most people use unified diff now. > 3. How do you look at code in PostgreSQL code base? do you have cross > function reference where I can search function and definition online? Use whatever facilities your editor and tools provide. I use vim and cscope mostly, via "vim -t" and "ctrl-]". Visual Studio's Intellisense works, whatever you want really. There's doxygen generated documentation too, see https://doxygen.postgresql.org/ . I don't find it that useful. -- Craig Ringer http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
Thanks for your comments, Craig!
2018-04-26 21:03 GMT-07:00 Craig Ringer <craig@2ndquadrant.com>:
On 24 April 2018 at 12:22, Charles Cui <charles.cui1984@gmail.com> wrote:
> Hi PostgreSQL community and mentors:
>
> Thanks for selecting my project as one of GSoC student projects! Pretty
> exciting and honor to join the development for PostgreSQL (the best database
> in the world :)). So for the first phase of this project (community
> bonding), I am planning to go ahead to set up my developing environment and
> familiar with the related code bases. And I have several questions regarding
> this.
> 1. What ide or command line tools do you guys used most for PostgreSQL
> development?
Varies.
vim, emacs, whatever editor you want. Some people use VS Code. Some
use Eclipse. You could code on Windows in Visual Studio if you want,
or XCode on Mac OS X.
I use vim with a bunch of plugins. Whatever floats your boat, really,
so long as you set it up to help you follow the coding conventions and
source structure rules re tab/spaces etc.
> 2. What version control do you use for postgres? Is github acceptable?
git. But patches are emailed to the list. Github is fine, but we don't
use its pull request facilities, and the PostgreSQL source on github
is a mirror of git.postgresql.org.
The stuff about context diff on the wiki is pretty outdated, I think
most people use unified diff now.
> 3. How do you look at code in PostgreSQL code base? do you have cross
> function reference where I can search function and definition online?
Use whatever facilities your editor and tools provide. I use vim and
cscope mostly, via "vim -t" and "ctrl-]". Visual Studio's Intellisense
works, whatever you want really.
There's doxygen generated documentation too, see
https://doxygen.postgresql.org/ . I don't find it that useful.
--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services