Commit graph

504 commits

Author SHA1 Message Date
b90e6289ac Fix the 'NULL' values in git_branches for the commits
The git_branches table had 'NULL' values for some commits where the branch was
deleted, importantly this was the string 'NULL', not an actual NULL value.

This commit fixes that, migrating the existing values to be '', and changing
the relevant code.

The primary key is also extended to include the datetime field, as this is
important to allow a branch to be deleted twice.
2019-09-29 17:10:04 +01:00
bd47a03c22 Add migration to create an index on load_new_guix_revision_job_events
To speed up the rendering of the index page.
2019-09-29 12:04:57 +01:00
580900b0f4 Fail early if the inferior is #f
This happens when the repl can't be loaded for example.
2019-09-29 10:45:46 +01:00
208122317a Try setting the en_US.UTF-8 locale, if the normalised fails
Older versions of the glibc-locales package just contain the UTF-8 variants,
not utf8.
2019-09-29 10:44:53 +01:00
d236f05d0f Don't error when processing revisions of Guix without graft support 2019-09-29 10:44:25 +01:00
c81d1e04ea Handle loading revisions without the (guix lint) module
This is a recent addition, so to support loading revisions without it, better
handle the error when loading the module.
2019-09-29 00:21:25 +01:00
15b94238c5 Unset the GUILE_LOAD_* environment variables when using inferiors
Otherwise modules from outside of the inferior can leak in.
2019-09-28 23:56:41 +01:00
16ed3e376e Provide the job id for jobs on the revision page
Using the title element, as the identifier is internal, but it's useful for
development to be able to find it out, if you want to run the job for testing.
2019-09-28 23:55:50 +01:00
ea253c4515 Add a new script to process emails in an mbox file
This can be used with the mbox files for the guix-commits mailing list to add
older emails in to the database.
2019-09-28 23:55:11 +01:00
4df889fc3c Add JSON output for the branch package versions page 2019-09-27 17:53:45 +01:00
00ac080297 Add some bars to the table on the branch package versions page
To provide a more visual view of when the package versions were available.
2019-09-27 17:29:33 +01:00
59c342ffde Add a new page to show package versions available on a branch
This is useful when looking back through history at what package versions were
previously available.
2019-09-27 17:28:46 +01:00
43bc7cab91 Add a new table to store package versions by revision ranges
This isn't new information, but derived from information already in the
database. It's collected here to make querying faster.

The table is updated when each new revision is entered.
2019-09-27 17:28:46 +01:00
465f262ded Tweak the textual search to rank exact name matches higher
Previously, if you searched for packages like Ruby or Guile, the actual Ruby
and Guile packages would be low in the rankings, as the terms Ruby or Guile
don't appear much in the descriptions.

Therefore, change the ordering to make these exact matches appear higher up.
2019-09-26 18:29:17 +01:00
759b75257e Switch to processing emails as bytevectors
This is better, as different parts of the email might be encoded differently,
and guile-email will take care of this if handed a bytevector.
2019-09-26 18:08:12 +01:00
bb94f6dd05 Add a Roadmap section to the README 2019-09-23 16:49:20 +01:00
b96bc58422 Handle the README.html file being missing 2019-09-23 16:44:16 +01:00
970bcb31cf Tweak screen.css to display paragraphs and lists better 2019-09-21 12:41:52 +01:00
1181d999a9 Serve the README.html file on the site 2019-09-21 12:41:39 +01:00
f5ff0f8638 Hack building a HTML version of the README in to Makefile.am
This is to be able to serve a readable version of the README on the site,
allowing those without Emacs to more easily read it.
2019-09-21 12:40:46 +01:00
ec1b2001cc Add a README
With local development instructions.
2019-09-21 12:40:21 +01:00
34ed73cdc1 Fix the godir in Makefile.am
I think the .go files should be in lib, rather than share.
2019-09-21 11:30:25 +01:00
ddf3eb6589 Add guix as a dependency
This is used as a Guile module.
2019-09-21 11:29:10 +01:00
1fcb5ad959 Remove test-env from the repository
This is a generated file.
2019-09-21 11:28:52 +01:00
aecd23d599 Add support for a .local.envrc file
As this is useful when setting custom configuration.
2019-09-21 11:28:24 +01:00
6a9f11fb94 Fix the repository page
The repository id is expected to be a number.
2019-09-14 09:05:47 +01:00
ce5f9bb3e6 Update the "source code here" link 2019-09-10 20:28:24 +01:00
eb0d33a3ba Show lint warnings on the comparison page 2019-09-07 17:19:34 +02:00
fe8102e1df Use numeric ids for git repositories 2019-09-05 16:40:39 +02:00
38adedcede Add newline to the end of the duplicate lint warning output 2019-09-05 16:07:23 +02:00
2485da7cfc Use numbers for ids in the derivation model
As this is easier to handle when doing queries with PostgreSQL, as you can use
the type information to determine how to handle the values.
2019-09-05 16:07:23 +02:00
2cb389037b Fix data input for package-metadata
Represent non-string home pages as NULL, and delete duplicates, as package
metadata entries can be duplicated.
2019-09-05 16:07:23 +02:00
4c67160b92 Improve error handling for insert-missing-data-and-return-all-ids 2019-09-05 16:07:23 +02:00
2b5594e5d4 Support deleting duplicates in insert-missing-data-and-return-all-ids
This is useful when you want to pass in data with some duplicates, and get
back a list of ids, where the duplicate entries are represented by the same
id.
2019-09-05 16:07:23 +02:00
1a55022524 Improve the package and package-metadata modules
Add tests around the package module, extract out the use of the
inferior-package record assessors so that they aren't part of the tests, and
switch across the package-metadata module to use
insert-missing-data-and-return-all-ids.
2019-09-05 16:07:23 +02:00
f29230e034 Put some comments in the mock-inferior module
About mocking the record file accessors not working :(
2019-09-05 16:07:23 +02:00
d3913a14d5 Start handling ids as numbers, rather than strings
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.
2019-09-05 16:07:23 +02:00
6c90fe4324 Reduce code duplication in the package module
By using insert-missing-data-and-return-all-ids.
2019-09-05 16:07:23 +02:00
f1a9495727 Reduce code duplication in the package-derivation module
Through using insert-missing-data-and-return-all-ids.
2019-09-04 19:27:48 +02:00
fc6bbf3e3c Change license code to use insert-missing-data-and-return-all-ids
As this now supports inserting sets of data.
2019-09-04 19:27:48 +02:00
80010a8a1b Improve insert-missing-data-and-return-all-ids
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.
2019-09-04 19:27:48 +02:00
1441942200 Hack better NULL support on to (squee)
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.
2019-09-04 12:52:12 +02:00
902560d56b Change normalise-database-values to normalise-values
As these values are not from the database, which is why they're not strings.
2019-09-02 18:17:01 +02:00
939b8b8bb6 Fix a couple of GET's in the controller match expression
These should be symbols, not just placeholders.
2019-09-01 18:48:31 +01:00
960eac26d7 Fix the after link on the packages page 2019-09-01 18:47:06 +01:00
939b51c80c Add a header for the derivations on the package page 2019-09-01 18:32:09 +01:00
d3254dddb6 Add lint warnings to the package page 2019-09-01 18:32:09 +01:00
514933db47 Link to the package from the lint warnings page 2019-09-01 18:32:09 +01:00
14fab21dc1 Link to the lint warnings page from the revision page 2019-09-01 18:32:09 +01:00
be25e487f1 Support filtering lint warnings by linter 2019-09-01 18:32:09 +01:00