Commit Graph

693 Commits

Author SHA1 Message Date
Thomas Keller
dffeb1f9d5 * move common file-specific functionality out of IDF_Views_Source into new
IDF_FileUtil and change all occurrences accordingly
* cache /etc/mime.types (or whatever is configured) per request in a static
variable in IDF_FileUtil
* always link directly to the download of attached files in the issues view
and place an additional "view" link only for those attachments which we
recognize as text with our weak criteria (closes issue 575)
2010-12-02 01:50:01 +01:00
Thomas Keller
6d7d7ebbfa copy'n'paste from some console window sucks sometimes 2010-12-02 01:48:34 +01:00
Thomas Keller
5b41fe3167 I promise I keep my fingers off git stuff now (a fix for issue 572) 2010-12-01 11:19:13 +01:00
Thomas Keller
dc2881ad02 Expand the revision and source linking automatisms to support the following
rev 12345
 added in abc12
 removed in abc12
 src:README@abc12
 src:README, src:COPYING#12
and many more schemes.
2010-11-29 21:50:40 +01:00
Thomas Keller
653299f4d8 Put a proper link around the "Home" menu entry. 2010-11-25 02:02:38 +01:00
Thomas Keller
704850f5c6 Add Chinese localization (thanks go to Jerry! fixes issue 521) 2010-11-25 00:20:10 +01:00
Thomas Keller
1548d4184e Suppress a notice in case the git log line does not contain
a title (fixes issue 520)
2010-11-25 00:13:47 +01:00
Thomas Keller
abc8b8f4ab Another f'up - isValidRevision() is gone, replaced by validateRevision().
Unit tests would really, really help us here...
2010-11-17 23:18:06 +01:00
Thomas Keller
08ef485ca9 Return the proper validation value if "HEAD" is the to-be-validated revision
(fixes issue 568)
2010-11-17 19:10:51 +01:00
Thomas Keller
35e670a1ab The data structure is already a stdClass object, so add a property,
not a key (partially fixes issue 568)
2010-11-17 19:08:41 +01:00
Thomas Keller
70e8d12420 Output the branch a particular commit is on; this is easy for
mercurial and monotone, but slightly harder till impossible to
do properly for git and svn. Please review and eventually adapt
the code to make it work better (partially fixes issue 450)
2010-11-17 01:53:17 +01:00
Thomas Keller
b4bc6abace Make the monotone master branch editable on forge level at least to
make it possible to switch the default project branch (partially
fixes issue 560)
2010-11-17 00:47:55 +01:00
Thomas Keller
e6f255bc56 Code style; wider input for monotone branch name 2010-11-17 00:47:52 +01:00
Thomas Keller
470a961a80 Add syntax highlighter support for h, hh and hpp (fixes issue 567) 2010-11-17 00:06:18 +01:00
Thomas Keller
8993d2988b Pick initial issue type and priority from the particular first item of the predefined issue labels list (thanks Jakub Vitak, closes issue 556) 2010-10-31 23:18:35 +00:00
Thomas Keller
e776fc0713 Switch doctype from html 4.01 strict to xhtml 1.0 transitional, we
largely ignored the former with xml-like constructs either
(closes issue 511).
2010-10-31 18:26:31 +01:00
Thomas Keller
c0ccdc768a add a couple of file extensions which are supported by our in-tree version of prettyfy (closes issue 490) 2010-10-31 18:18:20 +01:00
Thomas Keller
039ae01cfa Use an even smarter way of including additional resources for monotone
by using a wildcard dir matcher and document this accordingly.
2010-10-30 22:09:55 +00:00
Thomas Keller
fe001abd26 Rework the way IDF's SCM interface provides downloadable snapshots.
Instead of returning a command which gets executed and which should
pass through / stream its output data to the client, we're just
returning an instance of Pluf_HTTP_Response. This is needed, because
some SCMs, most noticable monotone, have no locally executable command
to provide a snapshot archive (and probably never will for our kind
of setup).

We therefor added a little BSD-licensed class "ZipArchive" which allows
the creation of pkzip-compatible archives on the fly by letting it eat
the file contents directly feed from the (remote) stdio instance.
Download performance is ok and lies between 15K/s and 110K/s, but at
least we do no longer block the browser while we pre-generate the zip
file server-side.

Thanks to Patrick Georgi for all his work!
2010-10-30 21:52:40 +00:00
Thomas Keller
8a55952204 * use the built-in push_hook_functions to register the netsync hooks,
this way additional hooks which need these notifications as well
  do not override earlier hooks
* optionally include an additional hooks.lua file at the very end
  in which custom hooks can be defined
2010-10-28 19:45:45 +02:00
Thomas Keller
c807c4b734 Add *.pas ([object] pascal) to the list of supported source extensions 2010-10-22 16:11:04 +02:00
Thomas Keller
972df3b231 Merge branch 'develop' of git://projects.ceondo.com/indefero into develop 2010-10-16 01:19:17 +02:00
Thomas Keller
7e10524f92 Add a popup menu in the main menu which allows to quickly jump between projects.
* refactor out the common menu code from several base*.html classes into main-menu.html
  and put the raw links into a unordered list (which makes it easier to create dynamic
  menus as we cannot insert block items into inline items in strict mode)
* query the list of available projects on every request and set them for every template
  in Middleware.php
* make the popup menu pretty
2010-10-15 00:40:09 +00:00
Thomas Keller
c3ff90c4f8 The signal name was wrong, therefor mtn syncs never updated the IDF timeline. 2010-10-14 19:26:09 +00:00
Thomas Keller
07aec736f5 Add --timestamp and --ticker=dot as default options for newly created
servers, which make it easier to follow the logs of individual servers.
2010-10-14 18:46:08 +00:00
Thomas Keller
b30bdc9833 While for allowed upload extensions the user was hinted to the
need of having to start the list with a space, here it was actually
needed code-wise. I rewrote the code so the space was not needed
and the documentation follows the actual behaviour.
2010-10-14 12:13:38 +00:00
Thomas Keller
d171a249c5 Its untrue that the list of extra allowed extensions for uploaded files
has to start with a space - its even a little quirky since the code
expands that to a regex like "/\.(|ext1|ext2...)$/", so in theory files
which end up with a dot and without an extension would be allowed by this.
For now we just fix the comment and indentation of the default
configuration option.
2010-10-14 12:13:21 +00:00
Thomas Keller
0379b862ec Document 'idf_strong_key_check' (closes issue 516) 2010-10-09 12:21:20 +00:00
Thomas Keller
5af2ab4d97 Make the timeline view and RSS feeds filterable by model (closes issue 543). 2010-10-09 11:53:01 +00:00
Thomas Keller
b518385962 Introduce a per-project issue template to hint a reporter to provide
certain information in his issue report (closes issue 540).
2010-10-09 10:40:30 +00:00
Thomas Keller
d25bc74d71 If no branch certificates are attached to a revision, we do not get
an empty array back from _getCerts(), but no entry for 'branch' at all.
2010-10-09 10:09:51 +00:00
Thomas Keller
5641173a04 Comment in hg_repositories by default, so it matches the defaults of the other SCMs 2010-10-07 19:21:05 +02:00
Thomas Keller
806e69b858 Don't let sync git fail on ssh keys with no comment field (references:
issue 531 and issue 545)
2010-10-07 11:56:52 +00:00
Thomas Keller
a29a2a0fa4 The connection list view could never work with this messy backend. 2010-10-07 01:05:15 +00:00
Thomas Keller
4951498c0b Ignore pseudo diff stanzas which mention binary files. 2010-10-06 21:37:53 +00:00
Thomas Keller
97ea828532 Use a persistent cache through Pluf_Cache to speed up cert queries. 2010-10-04 15:42:21 +00:00
Thomas Keller
d539eaf64b - _getLastChangeFor(): drop that, no longer needed
- getTree(), getPathInfo(): use the new extended manifest format
  and save the calls to query file sizes from contents as well
  as the calls to determine the revision in which a file changed
  at last
2010-10-04 15:22:57 +00:00
Thomas Keller
90edbf0d8b Tweak the basicio parser so that it properly handles multi-value
lines with hashes (lines like symbol [hash] [hash] are still not
handled, but aren't outputted from any command either as of now).
2010-10-04 15:20:53 +00:00
Thomas Keller
0c575ccc74 If a symbol is printed without a value list at the very end of a
basic_io dump, we might access a non-existing character position.
This has been fixed and the string length calculation is now only
done once.
2010-10-03 22:23:08 +00:00
Thomas Keller
eebdc5ad12 IDF_Scm_Monotone::getCommit() separate the first line of a commit from the
rest and write the rest in full_message - just like we do it for log and
everything else. This is ugly, really ugly, because it assumes something
on the format of a commit message, which might not be true at all for
some project, but this is something Loic has to decide (see also issue 491
and issue 535)
2010-09-28 21:37:26 +00:00
Thomas Keller
617589f41b Reorganize and expand the help of the monotone plugin.
Make the commentary in idf.php-dist less verbose.
2010-09-17 03:11:36 +02:00
Thomas Keller
50638c768f Ensure that the SyncMonotone plugin does not throw around errors
in case of a local (non-usher) monotone setup.
2010-09-17 02:36:48 +02:00
Thomas Keller
29b8bf8a4e Some revisions might not carry a branch cert (yet), because they're
part of another branch whose certs haven't been pushed into the server
yet, so we need to skip these revisions while going back in time
for the changelog. The initial revision however must carry a branch
cert, otherwise we have nothing to "follow".
2010-09-15 08:46:10 +00:00
Thomas Keller
42936cc51d Mark the submenu item "Open Issues" active when its active
(partially resolves issue 536)
2010-09-14 23:14:29 +00:00
Thomas Keller
b138548a10 * check if the project actually uses mtn as scm for the
membershipsUpdated signal
* code cleanup and simplification
2010-09-14 22:58:34 +00:00
Thomas Keller
7d5ba6248e Merge branch 'develop' of projects.ceondo.com:indefero into develop 2010-09-14 22:34:57 +00:00
Thomas Keller
36a58dcae2 * update the permissions on IDF_Project::membershipsUpdated - listen
to the same signal also for the initial setup, since the memberships
haven't been added at the time the create signal is thrown
* my array references goo was slightly stupid (the usage of foreach
is of course hazardous in cases like this)
* always insert a trailing new line in write-permissions and skip
read-in newlines from being processed
2010-09-14 22:30:28 +00:00
Thomas Keller
2106a5fbdc Merge branch 'develop' of projects.ceondo.com:indefero 2010-09-14 14:23:18 +02:00
Thomas Keller
0897c8608f Allow the upload of SSH keys without the optional comment field
(fixes issue 531 - thanks William!)
2010-09-14 14:22:34 +02:00
Thomas Keller
a32d6d8265 * its late - put_public_key of course needs a specific database
* do not throw around exceptions if a key which should be removed is not found in the database
2010-09-13 01:13:49 +00:00