Re: [ANNOUNCE] CGIT v0.10 Released with Lua Scripting, Authentication Support, and more

2014-01-17 Thread Jason A. Donenfeld
On Fri, Jan 17, 2014 at 5:16 PM, Peter Wu  wrote:
> Congratulations on this release. I personally think this release is a bit too
> early though. Some features were only created a week ago (like LUA and
> auth). A RC release would be more appropriate, don't you think?

If there are drastic issues, we'll issue a 0.10.1. That's why the
point release is there. I have done extensive testing, however, of
both of these, and I am feeling good about them.
___
CGit mailing list
CGit@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/cgit


Re: [ANNOUNCE] CGIT v0.10 Released with Lua Scripting, Authentication Support, and more

2014-01-17 Thread Peter Wu
On Friday 17 January 2014 16:18:32 Jason A. Donenfeld wrote:
> CGit 0.10 has been another huge release cycle, containg quite a few major
> new features, including the much anticipated authentication support and Lua
> scripting, as well as extensive under-the-hood changes and fixes: we're
> moving very close to git's codebase, integrating with its build system and
> using more and more of its internal classes.

Congratulations on this release. I personally think this release is a bit too 
early though. Some features were only created a week ago (like LUA and 
auth). A RC release would be more appropriate, don't you think?

I was not able yet to respond to the LUA crypto mail due to time shortage, I 
will do that when time permits (probably in two weeks).

Just my € 0.02.

Regards,
Peter
___
CGit mailing list
CGit@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/cgit


[ANNOUNCE] CGIT v0.10 Released with Lua Scripting, Authentication Support, and more

2014-01-17 Thread Jason A. Donenfeld
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hi everyone,

CGit 0.10 has been another huge release cycle, containg quite a few major new
features, including the much anticipated authentication support and Lua
scripting, as well as extensive under-the-hood changes and fixes: we're moving
very close to git's codebase, integrating with its build system and using more
and more of its internal classes.

== CGit on the Web ==

+ homepage: http://git.zx2c4.com/cgit/about/
+ git repository: http://git.zx2c4.com/cgit/
+ git clone: git://git.zx2c4.com/cgit
+ mailing list: cgit@lists.zx2c4.com
+ mailing list subscribe: http://lists.zx2c4.com/mailman/listinfo/cgit

== ChangeLog v0.10 ==

64 files changed, 2214 insertions(+), 991 deletions(-)

Features:
+ **Lua scripting support**:
  This is huge! Before, filters would do a fork() and an exec() on each
  invocation of the shell script or external program. This meant that for
  filters that are called many times during cgit's excution (such as the
  email-filter, below), performance would drop drastically. So, we've
  integrated support for Lua scripts with a built-in interpreter that can use
  either mainline Lua or LuaJIT. We also ship with a few sample Lua scripts.
  No forking is required, as these run right inside cgit. A Lua script can be
  specified in the config by prefixing it with "lua:", as opposed to the older
  "exec:" scripts.

+ **Authentication support**:
  This also is huge! Now repositories can be password protected. In fact, it's
  not just "repositories" and it's not just "password protected". The new
  authentication infrastructure uses our shiny new Lua scripting engine, which
  means you can restrict access to any cgit resource -- be it a repo, a tag,
  anything -- using any form of authentication -- passwords, tokens, oauth.
  The system is very modular. We've written filters/simple-authentication.lua
  which should cover most simple needs for basic password authentication, but
  this script can easily be modified for a very wide variety of needs. The new
  "auth-filter" option handles this.

+ **Email filter support**:
  At many places in cgit, we display an author or tagger name, and these names
  are always connected to an email address. We therefore have a new email
  filter, which filters the display of this text and receives the author's
  email address as an argument. This makes it possible to add features like
  Gravatars (see filters/email-gravatar.lua). It was requested by the
  kernel.org sysadmins for connecting cgit to a new key platform they're
  developing based on commit authors.

+ filter infrastructure revamp:
  Filters can now return values, can persist throughout the execution of
  cgit, can be constructed and destructed lazily, and in general received
  essentially a complete rewrite and rearchitecting. We now do things like
  hook libc's write() so that we can give certain outputs directly from git to
  various in-memory or out-of-process filters, depending on our needs.

+ support "rawdiff" command:
  This can be used to generate raw diffs between arbitrary revisions using
  something like: http://git.zx2c4.com/cgit/rawdiff/?id=v0.9.2&id2=v0.10

+ likewise, the "patch" command now supports taking an id2:
  This allows for specifying a revision range using the id2 parameter of
  /patch/. The output that is produced is similar to
  $ git format-patch --stdout id2..id

+ enable caching for rendered about pages with the cache-about-ttl option
+ move about tab to the left to highlight its new importance
+ the owner column in the repo list is now clickable to initiate a search of
  all repos with that owner, requested by repo.or.cz

+ largely expanded test suite, with support for patches, filters, and valgrind
  Valgrind can be run with the test suite using the new option:
  $ make test CGIT_TEST_OPTS=--valgrind

+ we now ship with a favicon
+ disallow snapshots from search engines

+ upgrade to git 1.8.5
+ use git's strbuf many places, such as reading config files
+ use git's array helper classes in many places
+ use git's prefixcmp and suffixcmp functions instead of strncmp

+ support latest highlight binaries in highlight.sh
+ much improved syntax-highlighting.py in terms of autodetection of file
  format


Behavior changes:
+ by default, the package prefix is now /usr/local:
  Package managers should take note of this and adjust accordingly.

+ we now disallow undocumented snapshot delminators:
  Since the introduction of selective snapshot format configuration in
  dc3c9b5 (allow selective enabling of snapshots, 2007-07-21), we allowed
  seven different delimiters for snapshot formats, while the documentation
  has always been clear about spaces being the only valid delimiter:
  The value is a space-separated list of zero or more of the values
  "tar", "tar.gz", "tar.bz2", "tar.xz" and "zip".
  Supporting the undocumented delimiters makes the code unnecessarily complex.

+ due to bugs in pygments, synta