10 years agoExtract website string
Chris Han []
Extract website string

10 years agoAllow displaying a website url for a project
Chris Han []
Allow displaying a website url for a project

10 years agoSupport tagged blobs
Chris Han []
Support tagged blobs

10 years agoDisallow history/blame for non-file blobs
Chris Han []
Disallow history/blame for non-file blobs

10 years agoFix scrunched project list with really long descriptions
Chris Han []
Fix scrunched project list with really long descriptions

10 years agoWrite to a temporary file when caching snapshots in case of terminated downloads
Chris Han []
Write to a temporary file when caching snapshots in case of terminated downloads

10 years agoMinify css
Chris Han []
Minify css

10 years agoFix log order for commits at the same time (such as rebases)
Chris Han []
Fix log order for commits at the same time (such as rebases)

10 years agoUse cache dir constant
Chris Han []
Use cache dir constant

10 years agoCache snapshot tarballs
Chris Han []
Cache snapshot tarballs

10 years agoDeliver archives incrementally to avoid OOM errors, by not using smarty
Chris Han []
Deliver archives incrementally to avoid OOM errors, by not using smarty

gzip requires a nasty hack using a tempfile because gzip files have a
header and trailer, so they can't be compressed in chunks. And php's
gzopen and compress.zlib:// don't seem to work with anything that's not
a file, so you can't compress on the fly to something like php://temp or
php://output

10 years agoFactor out command creation from execution
Chris Han []
Factor out command creation from execution

10 years agoDon't cache entire project object
Chris Han []
Don't cache entire project object

Serialization works recursively, which means everything contained inside
the project object is also serialized, which is a bunch of wasted space
and may not be safe.
The only thing we need to find a project is its path.

10 years agoUse the shared smarty cache instead of handling it manually
Chris Han []
Use the shared smarty cache instead of handling it manually

This cuts down the code and allows us to use memcache if configured.
Since the list of projects is background-level data (and not HTML
pages), it uses the object cache. But since it's not immutable like git
objects, the lifetime uses the regular cache lifetime setting, which is
generally set shorter than the object cache lifetime (that could even be
set to -1).

10 years agoAllow overriding lifetime on a per-object basis
Chris Han []
Allow overriding lifetime on a per-object basis

10 years agoAbstract out object cache settings to prepare for multiple caches
Chris Han []
Abstract out object cache settings to prepare for multiple caches

10 years agoMerge cached project directory code into ProjectListDirectory
Chris Han []
Merge cached project directory code into ProjectListDirectory

Since cache handling is a logical extension of the directory lister
driver, it should be in the same class and handled internally. Also
this keeps caching code out of the ProjectList factory

10 years agoCache project list if set to auto discover them
Tanguy Pruvot []
Cache project list if set to auto discover them
(cherry picked from commit 7b5bc0db7ec4ac45a02535c099530bd7a280ca86)

Conflicts:

include/git/ProjectListDirectory.class.php

10 years agoAllow compatibility mode to be specified per-project
Chris Han []
Allow compatibility mode to be specified per-project

10 years agoProject class is getting kind of big, reorganize a bit with code folds
Chris Han []
Project class is getting kind of big, reorganize a bit with code folds

10 years agoForgot that the exception message property was protected
Chris Han []
Forgot that the exception message property was protected

10 years agoTurn on benchmarking separately from debugging
Chris Han []
Turn on benchmarking separately from debugging

10 years agoMake it easier to debug why projects are/aren't appearing
Chris Han []
Make it easier to debug why projects are/aren't appearing

10 years agoPut html line breaks between debug messages
Chris Han []
Put html line breaks between debug messages

10 years agoDon't read description repeatedly
Chris Han []
Don't read description repeatedly

10 years agoSuppress warnings when description file doesn't exist
Chris Han []
Suppress warnings when description file doesn't exist

10 years agoSupport scm-manager repository configs
Chris Han []
Support scm-manager repository configs

Requires xml support. Only displays repositories marked as 'public'.

10 years agoExtract new diff message
Chris Han []
Extract new diff message

10 years agoDon't require a valid diff exe if using xdiff
Chris Han []
Don't require a valid diff exe if using xdiff

10 years agoFix blobdiff with xdiff
Chris Han []
Fix blobdiff with xdiff

10 years agoDisplay message when diffing binary files with xdiff
Chris Han []
Display message when diffing binary files with xdiff

10 years agoUse xdiff if installed
Chris Han []
Use xdiff if installed

10 years agoMerge branch 'experimental/nogit'
Chris Han []
Merge branch 'experimental/nogit'

10 years agoSometimes finfo_open chokes on the magic file and floods warnings
Chris Han []
Sometimes finfo_open chokes on the magic file and floods warnings

All sorts of junk "invalid offset" and "invalid type" messages, suppress
them

10 years agoFix tag objects dereferencing their commits
Chris Han []
Fix tag objects dereferencing their commits

10 years agoDon't do redundant regexes when reading commit data
Chris Han []
Don't do redundant regexes when reading commit data

10 years agoFix tree links in logs
Chris Han []
Fix tree links in logs

10 years agoMake the limit for the git exe fallback for the log configurable
Chris Han []
Make the limit for the git exe fallback for the log configurable

10 years agoCache packfile index offsets
Chris Han []
Cache packfile index offsets

10 years agoStore projectroot internally rather than loading it every time
Chris Han []
Store projectroot internally rather than loading it every time

10 years agoFor subtree snapshots include path in archive filename and prefix
Chris Han []
For subtree snapshots include path in archive filename and prefix

10 years agoThis was supposed to be static
Chris Han []
This was supposed to be static

10 years agoFactor out slugification into utility function
Chris Han []
Factor out slugification into utility function

10 years agoMake subtree snapshots using direct tree objects rather than path restrictions
Chris Han []
Make subtree snapshots using direct tree objects rather than path restrictions

10 years agoUse standard blob methods for split diff so it can use raw git objects
Chris Han []
Use standard blob methods for split diff so it can use raw git objects

10 years agoRecurse tree paths using raw git objects
Chris Han []
Recurse tree paths using raw git objects

10 years agoLoad sorted tag list using raw git objects
Chris Han []
Load sorted tag list using raw git objects

10 years agoLoad sorted head list using raw git objects
Chris Han []
Load sorted head list using raw git objects

10 years agoLoad project epoch using raw git objects
Chris Han []
Load project epoch using raw git objects

10 years agoRead gitweb.owner from raw config file
Chris Han []
Read gitweb.owner from raw config file

10 years agoFall back on git rev-list if skipping a significant number of commits
Chris Han []
Fall back on git rev-list if skipping a significant number of commits

10 years agoFix unset index warnings when listing log
Chris Han []
Fix unset index warnings when listing log

10 years agoLoad project log using raw git objects
Chris Han []
Load project log using raw git objects

Based on the log walking code from glip

Walking the log in raw php is a bit of a mixed bag as far as
performance. If you're walking commits close to the tip of the head
performance is good, because you save the shell call to git-rev-list and
performance wise it's light to load the parents of the first 50 commits.
However, in raw PHP we have to do the walking ourselves, which means we
can't --skip the first 100 or so commits - so when listing commits
several pages away from the head, we have to walk all the way from the
tip down to that page, and then discard the more recent commits we don't
care about.
So the loading time increases for each log page further away from the
tip (earlier commits).

10 years agoFix head commit lookup crashes for projects without any commits
Chris Han []
Fix head commit lookup crashes for projects without any commits

10 years agoLoad ref list using raw git files
Chris Han []
Load ref list using raw git files

10 years agoLoad HEAD using repo file pointer
Chris Han []
Load HEAD using repo file pointer

10 years agoLoad tag data from pack
Chris Han []
Load tag data from pack

10 years agoFix binary search of v1 pack indices
Chris Han []
Fix binary search of v1 pack indices

10 years agoLoad tree data from pack
Chris Han []
Load tree data from pack

10 years agoCalculate size of blob if not set
Chris Han []
Calculate size of blob if not set

10 years agoLoad blob data from pack
Chris Han []
Load blob data from pack

10 years agoDocument compat config option
Chris Han []
Document compat config option

10 years agoLoad commit data from pack
Chris Han []
Load commit data from pack

10 years agoRead commit parents from parent lines in the commit object
Chris Han []
Read commit parents from parent lines in the commit object

10 years agoUse binary search on index files
Chris Han []
Use binary search on index files

10 years agoAdd packed object extraction class
Chris Han []
Add packed object extraction class

Based on glip by Patrik Fimml

10 years agoFix merge commit logic
Chris Han []
Fix merge commit logic

A commit is a merge commit if it has multiple parents. The tip commit
of each head being merged become the parents of the merge commit.

10 years agoChange capitalization style to match
Chris Han []
Change capitalization style to match

10 years agoShortLog: Show only 'real commit' titles in bold
Tanguy Pruvot []
ShortLog: Show only 'real commit' titles in bold

Signed-off-by: Chris Han <xiphux@gmail.com>

10 years agoAppend backslashes to paths on windows
Chris Han []
Append backslashes to paths on windows

10 years agoMove windows and 64 bit tests to utility functions
Chris Han []
Move windows and 64 bit tests to utility functions

10 years agoQuote temp dir in diff command, for windows tempdirs with spaces in them
Chris Han []
Quote temp dir in diff command, for windows tempdirs with spaces in them

10 years agoFix default diff binary lookup
Chris Han []
Fix default diff binary lookup

Stupid mistake... wrote the function but forgot to actually use it

10 years agoBump version
Chris Han []
Bump version

10 years agoDefine background for commitdiff TOC
Chris Han []
Define background for commitdiff TOC

10 years agoExtract new strings
Chris Han []
Extract new strings

10 years agoi18n show all link
Chris Han []
i18n show all link

10 years agoAllow side by side commitdiff TOC to show the chosen diff and hide the
Chris Han []
Allow side by side commitdiff TOC to show the chosen diff and hide the
rest

10 years agoAdd a count to the side by side table of contents
Chris Han []
Add a count to the side by side table of contents

10 years agoMake side by side commitdiff TOC sticky
Chris Han []
Make side by side commitdiff TOC sticky

10 years agoIncrease TOC indent a bit
Chris Han []
Increase TOC indent a bit

10 years agoAdjust side-by-side display of added/deleted files to be closer to the way diff programs show
Chris Han []
Adjust side-by-side display of added/deleted files to be closer to the way diff programs show

10 years agoStart working on sidebar navigation for side by side commitdiff
Chris Han []
Start working on sidebar navigation for side by side commitdiff

10 years agoConsolidate copy-and-pasted diff mode cookie code
Chris Han []
Consolidate copy-and-pasted diff mode cookie code

10 years agoRemove extraneous pipe, fix diff output links
Chris Han []
Remove extraneous pipe, fix diff output links

10 years agoadd side-by-side commit-diff view
Tanguy Pruvot []
add side-by-side commit-diff view

10 years agoFix commit lookups where a commit is referenced by the name of a ref
Chris Han []
Fix commit lookups where a commit is referenced by the name of a ref
rather than a commit hash

Bug #78

10 years agoFix HEAD commit lookup on blob_plain
Chris Han []
Fix HEAD commit lookup on blob_plain

Bug #79

10 years agoAdded || ($end == ':') to check if there was the : operator at the end. Works with gitolite served repositories. Should work with gitosis as well.
mdevilz []
Added || ($end == ':') to check if there was the : operator at the end. Works with gitolite served repositories. Should work with gitosis as well.

Bug #77

Signed-off-by: Chris Han <xiphux@gmail.com>

10 years agoMake newly added blocks align correctly in side-by-side view
Chris Han []
Make newly added blocks align correctly in side-by-side view

Added blocks of code (so all '+' lines) are aligning incorrectly - they
appear one line higher than where they actually are, which is confusing
because it generally makes the code look like it's syntactially invalid.

This change does fix it, but I'm really don't think that it's the right
solution. Labeling it as a HACK for now to revisit later.

10 years agoRemember user's preference of seeing unified or side-by-side blobdiffs
Chris Han []
Remember user's preference of seeing unified or side-by-side blobdiffs

10 years agoBlobdiff and side by side diff templates are pretty much identical now - merge them
Chris Han []
Blobdiff and side by side diff templates are pretty much identical now - merge them

10 years agoSplit actual side-by-side display into its own template
Chris Han []
Split actual side-by-side display into its own template

10 years agoThe blobdiff and sidediff controllers are virtually identical now - merge them
Chris Han []
The blobdiff and sidediff controllers are virtually identical now - merge them

10 years agoI messed up whitespace-only lines - make sure they have enough height to show up
Chris Han []
I messed up whitespace-only lines - make sure they have enough height to show up

10 years agoAllow side by side diff lines to wrap so the view doesn't get really wide with long lines
Chris Han []
Allow side by side diff lines to wrap so the view doesn't get really wide with long lines

10 years agoDetach class names from model code so we can change them easily
Chris Han []
Detach class names from model code so we can change them easily

10 years agoMove split diff parsing code to FileDiff class
Chris Han []
Move split diff parsing code to FileDiff class

Now that the HTML escaping has been moved out of the controller layer to
the view layer, there's nothing view-specific about the diff parsing
code - move it to the model layer so it can be reused

10 years agoMake diff command a constant
Chris Han []
Make diff command a constant

10 years agoMove side by side diff look-and-feel related styles to gitphpskin.css
Chris Han []
Move side by side diff look-and-feel related styles to gitphpskin.css

comments