Arianne Development Meeting 2016-01-06: Difference between revisions
imported>Hendrik Brummermann No edit summary |
imported>Hendrik Brummermann |
||
| Line 179: | Line 179: | ||
== PostgreSQL support == |
== PostgreSQL support == |
||
* Long term possible objective using JSON datatype for rpobject.object |
|||
* ... |
|||
* Adding PostgreSQL support to Marauroa is little work |
|||
<!-- |
|||
* Hallo of fame script and website need to support Postgres, too. |
|||
21:51hendrik4. Postgres support |
|||
* Website |
|||
21:51hendrikMarkus? |
|||
** Website currently uses deprecated old mysql api. It needs to be rewritten using [https://php.net/manual/de/book.pdo.php PDO] anyway to be compatible with the next PHP version |
|||
21:52markusI just had the idea of starting to support postgres. |
|||
| ⚫ | |||
21:52markusOne thing postgres supports is a JSON datatype for columns which could serve as replacement for the blobs. |
|||
| ⚫ | |||
21:54hendrikI think adding Postgres support to Marauroa as such is quite simple and little work. |
|||
21:54balaurThat would be nice |
|||
21:54markusJSON datatype has one advantage to a blob: postgres can issue queries on JSON columns. for example: all json objects with attribute a="blah" |
|||
21:54hendrikDoes it support complex nested objects? |
|||
21:54markusI agree on that part, hendrik. |
|||
21:55hendrikI just realized, that adding postgres support to the stendhal website will be a lot of work. But we have to do that work anyway sooner or later. |
|||
21:56hendrikThe website uses deprecated mysql specific php libraries that have been removed in the next php version. |
|||
21:56markusthe documentation says, it supports RFC 4627 http://www.postgresql.org/docs/9.3/static/datatype-json.html |
|||
21:57markusI think a good first step would be to add plain postgres support before considering JSON |
|||
21:57hendrikYes, I agree. |
|||
21:58hendrikSo that is: Marauroa, Stendhal, Hall of fame script, website. |
|||
21:58hendrikI can do the Marauroa part soon. |
|||
22:00markusI could look into Stendhal to see what's needed there. |
|||
| ⚫ | |||
22:02hendrikSo that will be a project for a branch. Luckily we have git nowadays. |
|||
| ⚫ | |||
--> |
|||
Revision as of 16:23, 10 January 2016
We will meet in #arianne on irc.freenode.net, https://webchat.freenode.net/?channels=arianne on Wednesday, 6th January, 2016 at 20.00 server time (19.00 GMT)
Sourceforge, Github, Travis
In August after an extended downtime of Sourceforge, we created the Arianne organisation on Github and mirrored the Stendhal git repository. Back than the mirroring was only from Sourceforge to github, and it was done by the testserver build script once a night.
Since then we have improved the situation significantly: The mirroring is now done in both directions, and it is done almost instantaneously. This means it does not matter anymore whether commits are done to Sourceforge or Github. So we can use Github features such as pull request. And we can make use of Travis for running the JUnit test. Two way git mirror explains the details.
In addition to Stendhal, Marauroa is now on github, too.
All JUnit tests for Marauroa [1] and Stendhal [2] are passing. So before we do a new release, we can just check there. In addition, Travis will execute the test suite for each pull request and post the result directly to the pull request page. Unfortunetelly there is nice output of failed tests. So in case of failures, we have to look at the console log or execute the tests locally.
Failed tests are reported to IRC again.
Prepaing release of Marauroa 4.0
- After years of development, perception_json was merged into master.
- Release bockers are tagged with MARAUROA_03_99
- ...
Doing Sendhal releases
- At the moment I am the only person who can do a Stendhal release. If I am not available and there is an active contributor, lots of changes pill up. This is hard to review, and I assume it may be frustrating for contributors. Creating a release, however, is both complicated and time consuming.
- ...
PostgreSQL support
- Long term possible objective using JSON datatype for rpobject.object
- Adding PostgreSQL support to Marauroa is little work
- Hallo of fame script and website need to support Postgres, too.
- Website
- Website currently uses deprecated old mysql api. It needs to be rewritten using PDO anyway to be compatible with the next PHP version
- Old php mysql code and new PDO code will result in doubling the number of database connectings, and having isolated transactions.
- We can do that in (rather large) chunks by converting all the code that goes to the wiki-database first. Then the website database, and finally the game-database.