Commit graph

167 commits

Author SHA1 Message Date
fr33domlover
829fd72fef Use my new persistent-migration library, to which I moved the related modules 2018-02-26 14:23:02 +00:00
fr33domlover
3b4bd2a5e8 I made upgrades to the DB migration system in Funbot, apply them here too 2018-02-25 11:14:07 +00:00
fr33domlover
31410c7278 Update project URLs, Vervis is now officially hosted on a Vervis instance 2018-02-25 09:41:36 +00:00
fr33domlover
c2d1bb444b Add email sending capability to Vervis 2018-02-25 09:28:55 +00:00
fr33domlover
dc74456a6a Use the new migration system in place of persistent's one 2016-08-31 16:51:02 +00:00
fr33domlover
400c29289d Persistent schema backend, and PostgreSQL impl 2016-08-20 17:41:16 +00:00
fr33domlover
3329b49b2e Turn boolean ticketDone into TicketStatus enum 2016-08-11 00:44:11 +00:00
fr33domlover
941bd0ea03 Ticket content edit form lets you edit custom ticket params 2016-08-10 18:52:26 +00:00
fr33domlover
ec7dd4ee7e Experimental typeclass for ident+name model entities 2016-08-08 19:17:25 +00:00
fr33domlover
6e5ab77466 Projects must specify a ticket workflow 2016-08-08 19:05:22 +00:00
fr33domlover
01385c480b Per-workflow custom ticket fields 2016-08-08 14:01:06 +00:00
fr33domlover
687aa68a04 Per-sharer ticket workflows
A workflow is a new entity in Vervis. It defines the workflow of a
projects' ticket system. That includes the possible ticket states,
custom ticket fields, various filters and so on. All ticket system
customization is currently planned to be managed using workflows.

Currently workflows are private and per sharer, but the plan is to
support public workflows that can be shared and cloned.
2016-08-08 11:05:19 +00:00
fr33domlover
dc54a89503 Ticket tree view page 2016-08-04 07:36:24 +00:00
fr33domlover
e7abd8eb9d DAG tree view model builder, based on (V, E) and user choices 2016-08-03 23:09:42 +00:00
fr33domlover
5c153b0294 Ticket dependency add/remove and some fixes to recursive SQL 2016-07-28 16:40:10 +00:00
fr33domlover
a41f111bee Split recursive SQL query huge module into smaller modules 2016-07-20 10:08:42 +00:00
fr33domlover
87205772bb Transitive reduction of DAGs for FGL 2016-07-14 00:39:00 +00:00
fr33domlover
7a33ef16f8 PersistEntityGraph is for any graph, PersistEntityHierarchy for DAGs 2016-07-05 16:13:48 +00:00
fr33domlover
7d8596c52b Path existence checking between graph nodes 2016-07-05 12:37:31 +00:00
fr33domlover
644670b494 Not-yet-added empty test suite 2016-07-05 12:36:40 +00:00
fr33domlover
879ad873e3 DB graph cycle existence checking using recursive SQL query 2016-07-05 08:46:58 +00:00
fr33domlover
fcb68ceea7 List ticket deps and reverse deps in ticket page 2016-07-04 09:58:25 +00:00
fr33domlover
1191a3c5cd Role graph widget 2016-07-02 09:02:13 +00:00
fr33domlover
7be410f329 Upgrade LTS from 5.13 to 6.5 2016-07-02 08:51:29 +00:00
fr33domlover
063caab86d Insert links to DAG diagram 2016-06-28 22:19:48 +00:00
fr33domlover
5b4607e64d Initial code for intransitive DAG drawing 2016-06-28 19:46:54 +00:00
fr33domlover
a4eeb61a44 Define colors for use with 'diagrams' 2016-06-26 08:03:18 +00:00
fr33domlover
386d499a61 Define colors in dedicated Vervis.Palette module 2016-06-22 20:58:42 +00:00
fr33domlover
c7de6119ab Build role graph 2016-06-21 07:35:19 +00:00
fr33domlover
7886d9a515 Layering of intransitive DAGs 2016-06-20 22:50:16 +00:00
fr33domlover
5340cf23f1 Project role inheritance and graph queries with some raw SQL 2016-06-17 20:17:39 +00:00
fr33domlover
5e2e7f806a Forgot to record a file, darcs amend decided not to work 2016-06-13 13:48:31 +00:00
fr33domlover
76a627385c Recursive SQL queries, still need to test before use 2016-06-12 22:37:52 +00:00
fr33domlover
ae83a5f3ad Ticket un/assign (like un/claim but for other people) 2016-06-07 07:33:19 +00:00
fr33domlover
f8e1442e72 Initial minimal optional per-project wiki 2016-06-04 06:57:54 +00:00
fr33domlover
ef810f2854 Add simple Display class for showing-as-strict-Text 2016-06-03 09:12:33 +00:00
fr33domlover
c0e8ed0d2e Initial minimal limited per-repo RBAC system 2016-05-29 13:17:55 +00:00
fr33domlover
ec49a4c424 Libravatar support \o/ 2016-05-25 21:10:41 +00:00
fr33domlover
4c3aa8b269 Add group roles and make a group's creator its admin 2016-05-25 15:52:15 +00:00
fr33domlover
b7d443d031 Show creation date in group page 2016-05-25 07:50:10 +00:00
fr33domlover
bc66463776 Add group routes 2016-05-24 21:48:21 +00:00
fr33domlover
c6c41b485c Finish route change, it builds now
I used this chance to make some name changes, add some utils, tweak some
imports, remove more `setTitle`s and so on. I also made person, repo,
key and project creation forms verify CI-uniqueness.
2016-05-23 20:46:54 +00:00
fr33domlover
49807ed27f Start big route change, doesn't build yet
I decided to add some safety to routes:

- Use dedicated newtypes
- Use CI for the CI-unique DB fields

Since such a change requires so many changes in many source files, this
is also a chance to do other such breaking changes. I'm recording the
change gradually. It won't build until I finish, so for now don't waste
time trying to build the app.
2016-05-23 12:24:14 +00:00
fr33domlover
3a65568d8f PersistField instance for CI, i.e. case-insensitive DB fields 2016-05-22 21:43:59 +00:00
fr33domlover
1a3f976a81 Ticket filtering 2016-05-22 14:31:56 +00:00
fr33domlover
a56a7575fe Implement reply-to-existing-comment 2016-05-19 22:07:25 +00:00
fr33domlover
c942c7d398 Ticket discussion and message routes 2016-05-19 16:58:23 +00:00
fr33domlover
93aeae36a8 Implement building discussion message tree from DB 2016-05-19 12:06:27 +00:00
fr33domlover
ad9629d3f3 Dummy discussion widget 2016-05-18 10:10:07 +00:00
fr33domlover
1b1e4b978d Much richer set of Darcs rev TH splices 2016-05-18 07:00:19 +00:00
fr33domlover
e76c1f7206 Compressed inventory parser and DarcsRev TH utils 2016-05-17 20:34:22 +00:00
fr33domlover
9ba6761459 Darcs inventory parser: Add hash types and parse previous inventory 2016-05-16 14:02:43 +00:00
fr33domlover
0d7349cb5d Split git and darcs specific handlers into separate submodules 2016-05-13 10:11:17 +00:00
fr33domlover
b2f5b20184 Minimal pagination for git and darcs change log 2016-05-13 08:49:19 +00:00
fr33domlover
17c4ff3d23 Basic pagination for Vervis 2016-05-11 14:42:41 +00:00
fr33domlover
117034a8fa Initial incomplete pagination model 2016-05-10 11:05:56 +00:00
fr33domlover
5c288c7fdb Darcs change log view 2016-05-08 14:28:03 +00:00
fr33domlover
07b627eb9c Refactor Git log view into separate modules and Widgets 2016-05-06 10:29:02 +00:00
fr33domlover
96d73f3551 Basic TimeEvent support for 'hourglass', will need this for 'hit' 2016-05-05 23:05:56 +00:00
fr33domlover
ebbcc6afdc Explore friendly rendering of event time 2016-05-05 22:20:11 +00:00
fr33domlover
3ed04941e8 Refactor git source view code and implement the same for Darcs 2016-05-05 07:29:19 +00:00
fr33domlover
69229fb80e Enable Darcs repo creation using the executable
Darcs does export most of its module tree, but there's a problem: Darcs
relies on the current directory. It changes the current directory of the
process to the repo, and then proceeds using paths relative to the repo
dir. This is bad for my case here. If some other thread uses a relative
path (e.g. currently any repo path is relative by default) in parallel,
it will fail.

For now, the quick path around this problem is to use the `darcs`
program.
2016-05-04 11:44:06 +00:00
fr33domlover
1c4b674550 Dedicated module for "time ago" 2016-05-03 01:20:23 +00:00
fr33domlover
d69c5e8abc Repos specify their VCS (i.e. Git or Darcs) in the DB 2016-05-02 23:51:53 +00:00
fr33domlover
0b06b72b85 Implement an 'initRepo' that actually works 2016-05-02 23:11:32 +00:00
fr33domlover
13d814034c Breadcrumbs widget in default layout 2016-05-02 14:16:51 +00:00
fr33domlover
09b767a037 New ticket post form 2016-04-30 22:32:22 +00:00
fr33domlover
db06aeff0e New ticket form 2016-04-30 21:26:54 +00:00
fr33domlover
144918cd9f Send raw pack as git-upload-pack-result 2016-04-29 04:32:32 +00:00
fr33domlover
4381213446 Binary request body decoder 2016-04-24 18:48:07 +00:00
fr33domlover
e72284e182 Incremental binary stream decoder, generalized from hit-network 2016-04-24 18:25:30 +00:00
fr33domlover
19471d4ca2 Smart HTTP ref discovery 2016-04-22 19:46:46 +00:00
fr33domlover
8856bd2344 Git over HTTP: Add initial always-denying ref discovery handler 2016-04-21 00:32:22 +00:00
fr33domlover
6e29f246bd Enable git-fetch using the git executable 2016-04-19 14:56:02 +00:00
fr33domlover
09775e02ae Parse the git-uploac-pack SSH command properly 2016-04-19 09:42:02 +00:00
fr33domlover
a0945bfd87 Use Pandoc for document rendering, for now just Markdown 2016-04-17 17:55:23 +00:00
fr33domlover
85319ddfdc Render README below repo tree view when present 2016-04-13 16:17:34 +00:00
fr33domlover
b42d9db432 Split source file rendering into separate module 2016-04-13 06:55:39 +00:00
fr33domlover
b6b493d3ef No trailing zero components in version number 2016-04-12 15:19:02 +00:00
fr33domlover
05f537d288 Syntax highlighting suppport, but no colors in CSS yet 2016-04-12 11:21:14 +00:00
fr33domlover
9e9e7fc803 Display repo files in repo page instead of history log 2016-04-11 22:13:32 +00:00
fr33domlover
b68428d9b6 Remove some old code and adapt to hit-graph 2016-04-09 15:45:00 +00:00
fr33domlover
50198a1906 Move git protocol code away to separate package 2016-04-08 21:10:33 +00:00
fr33domlover
7b9f6e9714 Work on git pack protocol, not done yet
This is a lot of code, better save now than sorry later when something
gets deleted by mistake.

Either way, the code will move later - once tested and organized
properly - into its own package.
2016-04-01 05:00:02 +00:00
fr33domlover
4a6853e7e7 Add SSH key upload form 2016-03-08 02:52:46 +00:00
fr33domlover
df55bf23c9 Rely on stack for dep versions and upgrade to LTS 5.5 2016-03-07 01:12:55 +00:00
fr33domlover
78213db2fc Add UI for display of SSH keys 2016-03-07 00:42:06 +00:00
fr33domlover
8cf0f2502c Implement DB-based SSH authentication 2016-03-06 11:58:48 +00:00
fr33domlover
b20c672a01 Implement git history log in repo page 2016-03-03 08:15:54 +00:00
fr33domlover
100d2948cb Add Vervis.Path module with repo path utils 2016-03-01 22:43:31 +00:00
fr33domlover
4b0c444bcb Implement topsort for commits and apply to graph 2016-03-01 22:16:01 +00:00
fr33domlover
7a76703d25 Implement loading a commit graph 2016-02-29 21:42:37 +00:00
fr33domlover
40b4f4e475 Stop using classy-prelude-yesod 2016-02-29 14:04:23 +00:00
fr33domlover
ec9fc486ee Implement flexible Kahn topsort for use on git commit graphs 2016-02-29 01:59:33 +00:00
fr33domlover
ec4c7de582 Add repo pages and repo creation form 2016-02-27 05:41:36 +00:00
fr33domlover
9b686c6db0 Write initial overview content and add project creation form 2016-02-25 03:10:30 +00:00
fr33domlover
004fdb118e Put all modules under a new Vervis module 2016-02-23 08:45:03 +00:00
fr33domlover
9154ad8f8b Move some utils to new modules 2016-02-23 08:28:25 +00:00
fr33domlover
ab98930caa Add style palette module for later use 2016-02-18 13:36:25 +00:00
fr33domlover
5287a47372 Add project pages 2016-02-17 21:53:53 +00:00