aboutsummaryrefslogtreecommitdiff
path: root/guix-data-service
Commit message (Collapse)AuthorAge
* Start handling ids as numbers, rather than stringsChristopher Baines2019-09-05
| | | | | | | | | squee, returns all data as strings, and expects strings as inputs to queries. So, keeping the ids as strings was easy initially, but it means that you can't tell from the type whether it should be quoted, or not... Therefore, handle ids as strings, converting them to numbers when they're fetched from the database, and back to strings as part of the queries.
* Reduce code duplication in the package moduleChristopher Baines2019-09-05
| | | | By using insert-missing-data-and-return-all-ids.
* Reduce code duplication in the package-derivation moduleChristopher Baines2019-09-04
| | | | Through using insert-missing-data-and-return-all-ids.
* Change license code to use insert-missing-data-and-return-all-idsChristopher Baines2019-09-04
| | | | As this now supports inserting sets of data.
* Improve insert-missing-data-and-return-all-idsChristopher Baines2019-09-04
| | | | | | Use exec-query-with-null-handling to distinguish NULL values, change it to just take a list of fields and remove the handlers. Also, add a sets-of-data? parameter so that this can be used licenses.
* Hack better NULL support on to (squee)Christopher Baines2019-09-04
| | | | | | | | | PQgetvalue used by squee returns null values as empty strings, which are ambiguous for string fields. Therefore, use PQgetisnull to implement a serialiser for squee which checks empty strings to see if they're actually a NULL value, then returns '() in this case. exec-query-with-null-handling can be used to access this behaviour.
* Change normalise-database-values to normalise-valuesChristopher Baines2019-09-02
| | | | As these values are not from the database, which is why they're not strings.
* Fix a couple of GET's in the controller match expressionChristopher Baines2019-09-01
| | | | These should be symbols, not just placeholders.
* Fix the after link on the packages pageChristopher Baines2019-09-01
|
* Add a header for the derivations on the package pageChristopher Baines2019-09-01
|
* Add lint warnings to the package pageChristopher Baines2019-09-01
|
* Link to the package from the lint warnings pageChristopher Baines2019-09-01
|
* Link to the lint warnings page from the revision pageChristopher Baines2019-09-01
|
* Support filtering lint warnings by linterChristopher Baines2019-09-01
|
* Add lint-checkers-for-revision to the lint-checker moduleChristopher Baines2019-09-01
|
* Add a new table guix_revision_lint_checkersChristopher Baines2019-09-01
| | | | | | | | | To associate a set of lint checkers with a specific revision. While there is the association through the lint warnings, that only works for checkers where there are lint warnings for that revision. Therefore, to allow finding all the checkers for a specific revision, also associate them directly with the revision.
* Handle a change in guix with the <derivation-input> recordChristopher Baines2019-09-01
| | | | | | | | The first field is now a <derivation> record, rather than a store path for the derivation. It's probably not necessary to cope with two versions, but this is what I've done currently.
* Log the manifest derivation when loading new revisionsChristopher Baines2019-09-01
| | | | As this is useful to know.
* Add a page to show the lint warnings for a revisionChristopher Baines2019-09-01
|
* Add lint-warnings-for-guix-revision to the lint-warning moduleChristopher Baines2019-09-01
|
* Include glibc-locales from the inferior guix in the environmentChristopher Baines2019-09-01
| | | | | | | | | | | When loading data from an inferior Guix, first build it's latest version of glibc-locales, and include that in the environment from the inferior. This improves locale support, which is currently relevant for extracting lint warnings. Without this change, you'd only be able to switch to locales supported by the glibc-utf8-locales package, assuming that the right version is available.
* Log the guix store path being usedChristopher Baines2019-09-01
| | | | In the load-new-guix-revision module.
* Improve handling of errors when changing localeChristopher Baines2019-09-01
| | | | In the load-new-guix-revision module.
* Display counts of lint warnings on the revision pageChristopher Baines2019-09-01
|
* Add lint-warning-count-by-lint-checker-for-revisionChristopher Baines2019-09-01
| | | | | To return counts of lint warnings, grouped by lint checker for a specific revision.
* Store lint warnings in the databaseChristopher Baines2019-09-01
| | | | | | | | | | This commit adds the relevant tables and code to store lint warnings in the database. Currently, only lint checkers which don't require access to the network will be run, as this allows the processing to happen without network access. Also, this functionality won't work in older versions of Guix which don't expose the lint warnings in a compatible way.
* Add buffering to the log handling for jobsChristopher Baines2019-08-31
| | | | | To increase the log output speed, avoiding inserting one character at a time in to the database.
* Add insert-missing-data-and-return-all-ids to the model utils moduleChristopher Baines2019-08-31
| | | | | This should help greatly with populating the database with new entries, and greatly reduce code duplication.
* Use $STR$ for better quoting in quote-stringChristopher Baines2019-08-31
|
* Add value->sql-boolean to (guix-data-service model utils)Christopher Baines2019-08-31
|
* Fix insert-guix-revision to return an idChristopher Baines2019-08-31
| | | | Rather than an id wrapped in a list.
* Alphabetically order the derivation comparison pageChristopher Baines2019-08-06
|
* Remove the build status filter from the compare derivations pageChristopher Baines2019-08-06
| | | | As there isn't sufficient data to make this work yet.
* Support filtering by systems and targets when comparing derivationsChristopher Baines2019-08-06
|
* Improve derivation comparison to show more changesChristopher Baines2019-08-06
| | | | | In cases where the version is changed for example, the relevant derivations will now show up, whereas previously they did not.
* Only show the Compare button when it'll workChristopher Baines2019-08-05
| | | | On the branch page.
* Avoid erroring when processing emails againChristopher Baines2019-08-05
| | | | | These changes allow processing emails again, and just creating job and branch entries where data is missing.
* Properly handle not finding a matching derivationChristopher Baines2019-08-05
|
* Set the Vary header to a sensible default valueChristopher Baines2019-08-05
| | | | As most pages vary based on the Accept header.
* Tweak the branch table layoutChristopher Baines2019-08-05
|
* Clear the previous log entry when starting a jobChristopher Baines2019-08-04
|
* Fix some duplicated values in tablesChristopher Baines2019-08-04
| | | | | | | | | | | | | The licenses table, along with the package_metadata table had duplicate values. This could happen as the unique constraints on those tables didn't properly account for the nullable fields. The duplicates in those tables also affected the license_sets, packages, package_derivations tables in a similar way. Finally, the guix_revision_package_derivations table was also affected. This commit adds a migration to fix the data, as well as the constraints. THe code to populate the licenses and package_metadata tables is also updated.
* Link to the comparison page from the branch pageChristopher Baines2019-07-29
| | | | To allow easily comparing revisions.
* Link to the package pages from the comparison pageChristopher Baines2019-07-29
|
* Link to cgit on the comparison pageChristopher Baines2019-07-29
|
* Add a function to get the cgit URL bases for revisionsChristopher Baines2019-07-29
| | | | To enable adding a link to cgit to the comparison page.
* Fix the JSON compare outputChristopher Baines2019-07-29
|
* Neaten up how branches in Git repositories are linked toChristopher Baines2019-07-27
|
* Link to the Statistics and Jobs pages from the index pageChristopher Baines2019-07-27
|
* Fix the latest-processed-revision pagesChristopher Baines2019-07-27
|