Changeset - 6e8322c438ca
[Not reviewed]
beta
0 3 0
Marcin Kuzminski - 15 years ago 2010-11-26 00:11:12
marcin@python-works.com
docs updates
3 files changed with 58 insertions and 10 deletions:
0 comments (0 inline, 0 general)
docs/changelog.rst
Show inline comments
 
.. _changelog:
 

	
 
Changelog
 
=========
 

	
 
1.1.0 (**2010-XX-XX**)
 
----------------------
 
- rewrite of internals for vcs >=0.1.9
 

	
 
:status: in-progress
 
:branch: beta
 

	
 
news
 
++++
 

	
 
- rewrite of internals for vcs >=0.1.10
 
- anonymous access,authentication via ldap
 
- performance upgrade for cached repos list - each repository has it's own 
 
  cache that's invalidated when needed.
 
- main page quick filter for filtering repositories
 
- user dashboards with ability to follow chosen repositories actions
 
- sends email to admin on new user registration
 
- added cache/statistics reset options into repository settings
 
- more detailed action logger (based on hooks) with pushed changesets lists
 
  and options to disable those hooks from admin panel
 
- a lot of fixes and tweaks for file browser
 
- introduced new enhanced changelog for merges that shows more accurate results
 
- gui optimizations, fixed application width to 1024px
 
- whoosh,celeryd,upgrade moved to paster command
 

	
 
fixes
 
+++++
 

	
 
- fixes #61 forked repo was showing only after cache expired
 
- fixes #76 no confirmation on user deletes
 
- fixes #66 Name field misspelled
 
- fixes #72 block user removal when he owns repositories
 
- fixes #69 added password confirmation fields
 
- numerous small bugfixes
 
- whoosh index moved to paster command
 
- a lot of fixes and tweaks for file browser
 
- fixed detached session issues
 

	
 
(special thanks for TkSoh for detailed feedback)
 

	
 

	
 
1.0.2 (**2010-11-12**)
 
----------------------
 

	
 
news
 
++++
 

	
 
- tested under python2.7
 
- bumped sqlalchemy and celery versions
 

	
 
fixes
 
+++++
 

	
 
- fixed #59 missing graph.js
 
- fixed repo_size crash when repository had broken symlinks
 
- fixed python2.5 crashes.
 
- tested under python2.7
 
- bumped sqlalchemy and celery versions
 

	
 

	
 
1.0.1 (**2010-11-10**)
 
----------------------
 

	
 
news
 
++++
 

	
 
- small css updated
 

	
 
fixes
 
+++++
 

	
 
- fixed #53 python2.5 incompatible enumerate calls
 
- fixed #52 disable mercurial extension for web
 
- fixed #51 deleting repositories don't delete it's dependent objects
 
- small css updated
 

	
 

	
 
1.0.0 (**2010-11-02**)
 
----------------------
 

	
 
- security bugfix simplehg wasn't checking for permissions on commands
 
  other than pull or push.
 
- fixed doubled messages after push or pull in admin journal
 
- templating and css corrections, fixed repo switcher on chrome, updated titles
 
- admin menu accessible from options menu on repository view
 
- permissions cached queries
 

	
 
1.0.0rc4  (**2010-10-12**)
 
--------------------------
 

	
 
- fixed python2.5 missing simplejson imports (thanks to Jens Bäckman)
 
- removed cache_manager settings from sqlalchemy meta
 
- added sqlalchemy cache settings to ini files
 
- validated password length and added second try of failure on paster setup-app
 
- fixed setup database destroy prompt even when there was no db
 

	
 

	
 
1.0.0rc3 (**2010-10-11**)
 
-------------------------
 

	
 
- fixed i18n during installation.
 

	
 
1.0.0rc2 (**2010-10-11**)
 
-------------------------
 

	
 
- Disabled dirsize in file browser, it's causing nasty bug when dir renames 
 
  occure. After vcs is fixed it'll be put back again.
 
- templating/css rewrites, optimized css.
 

	
docs/index.rst
Show inline comments
 
.. _index:
 

	
 
=================================================
 
Welcome to RhodeCode (RhodiumCode) documentation!
 
=================================================
 

	
 
``RhodeCode`` (formerly hg-app) is Pylons based Mercurial repository 
 
browser/management with build in push/pull server and full text search. It's 
 
similar to github or bitbucket, but it's suppose to run as standalone hosted 
 
``RhodeCode`` (formerly hg-app) is Pylons framework based Mercurial repository 
 
browser/management with build in push/pull server and full text search.
 
It works on http/https, has build in permission/authentication(+ldap) features 
 
It's similar to github or bitbucket, but it's suppose to run as standalone hosted 
 
application, it's open source and focuses more on restricted access to 
 
repositories. It's powered by vcs_ library that we created to handle many 
 
various version control systems.
 

	
 
RhodeCode uses `Semantic Versioning <http://semver.org/>`_
 

	
 
RhodeCode demo
 
--------------
 

	
 
http://hg.python-works.com
 

	
 
The default access is
 

	
 
- username: demo
 
- password: demo
 

	
 
Source code
 
-----------
 

	
 
Source code is along with issue tracker is available at
 
http://bitbucket.org/marcinkuzminski/rhodecode
 

	
 
Also a source codes can be obtained from demo RhodeCode instance
 
http://hg.python-works.com/rhodecode/summary
 

	
 
Features
 
--------
 

	
 
- Has it's own middleware to handle mercurial_ and git_ protocol request. 
 
  Each request can be logged and authenticated. Runs on threads unlikely to 
 
  hgweb You can make multiple pulls/pushes simultaneous. Supports http/https
 
  both on git_ and mercurial_
 
- Full permissions and authentication per project private/read/write/admin. 
 
  One account for web interface and mercurial_ push/pull/clone.
 
- Mako templates let's you customize look and feel of application.
 
- Beautiful diffs, annotations and source codes all colored by pygments.
 
- Mercurial_ branch graph and yui-flot powered graphs with zooming and statistics
 
- Admin interface with user/permission management. User activity journal logs
 
  pulls, pushes, forks,registrations. Possible to disable built in hooks
 
- Server side forks, it's possible to fork a project and hack it free without
 
  breaking the main.   
 
- Full text search on source codes, search on file names. All powered by whoosh
 
  and build in indexing daemons
 
  (no external search servers required all in one application)
 
- Rss / atom feeds, gravatar support, download sources as zip/tarballs  
 
- Async tasks for speed and performance using celery_ (works without them too)  
 
- Backup scripts can do backup of whole app and send it over scp to desired 
 
  location
 
- Setup project descriptions and info inside built in db for easy, non 
 
  file-system operations
 
- Added cache with invalidation on push/repo management for high performance and
 
  always up to date data. 
 
- Based on pylons 1.0 / sqlalchemy 0.6 / sqlite
 

	
 

	
 
.. figure::  images/screenshot1_main_page.png
 

	
 
   Main page of RhodeCode
 

	
 
.. figure::  images/screenshot2_summary_page.png
 

	
 
   Summary page
 
   
 
.. figure::  images/screenshot3_changelog_page.png
 

	
 
   Changelog with DAG graph
 
    
 
    
 
Incoming / Plans
 
----------------
 

	
 
- code review (probably based on hg-review)
 
- full git_ support, with push/pull server
 
- project grouping
 
- redmine integration
 
- commit based build in wiki system
 
- clone points and cloning from remote repositories into rhodecode 
 
  (git_ and mercurial_)
 
- more statistics and graph (global annotation + some more statistics)
 
- user customized activity dashboards
 
- other cools stuff that i can figure out (or You can help me figure out)
 

	
 
License
 
-------
 

	
 
``rhodecode`` is released under GPL_ license.
 

	
 

	
 
Mailing group Q&A
 
-----------------
 

	
 
http://groups.google.com/group/rhodecode
 
join the `Google group <http://groups.google.com/group/rhodecode>`_
 

	
 
open an issue at `issue tracker <http://bitbucket.org/marcinkuzminski/rhodecode/issues>`_
 

	
 

	
 
Documentation
 
-------------
 

	
 
**Installation:**
 

	
 
.. toctree::
 
   :maxdepth: 1
 

	
 
   installation
 
   setup
 
   upgrade
 
   changelog
 

	
 
Other topics
 
------------
 

	
 
* :ref:`genindex`
 
* :ref:`search`
 

	
 
.. _virtualenv: http://pypi.python.org/pypi/virtualenv
 
.. _python: http://www.python.org/
 
.. _django: http://www.djangoproject.com/
 
.. _mercurial: http://mercurial.selenic.com/
 
.. _subversion: http://subversion.tigris.org/
 
.. _git: http://git-scm.com/
 
.. _celery: http://celeryproject.org/
 
.. _Sphinx: http://sphinx.pocoo.org/
 
.. _GPL: http://www.gnu.org/licenses/gpl.html
 
.. _vcs: http://pypi.python.org/pypi/vcs
docs/installation.rst
Show inline comments
 
.. _installation:
 

	
 
Installation
 
============
 

	
 
``RhodeCode`` is written entirely in Python, but in order to use it's full
 
potential there are some third-party requirements. When RhodeCode is used 
 
together with celery You have to install some kind of message broker,
 
recommended one is rabbitmq_ to make the async tasks work.
 

	
 
Of course RhodeCode works in sync mode also, then You don't have to install
 
any third party apps. Celery_ will give You large speed improvement when using
 
many big repositories. If You plan to use it for 2 or 3 small repositories, it
 
will work just fine without celery running.
 
   
 
After You decide to Run it with celery make sure You run celeryd and
 
message broker together with the application.   
 

	
 
Requirements for Celery
 
-----------------------
 

	
 
.. note::
 
   Installing message broker and using celery is optional, RhodeCode will
 
   work without them perfectly fine.
 

	
 

	
 
**Message Broker** 
 

	
 
- preferred is `RabbitMq <http://www.rabbitmq.com/>`_
 
- possible other is `Redis <http://code.google.com/p/redis/>`_
 

	
 
For installation instructions You can visit: 
 
http://ask.github.com/celery/getting-started/index.html
 
It's very nice tutorial how to start celery_ with rabbitmq_
 

	
 
Install from Cheese Shop
 
------------------------
 
Rhodecode requires python 2.5 or 2.6 and will not run on older or newer
 
versions of python. Python 2.7 is untested and thus not supported.
 

	
 
Easiest way to install ``rhodecode`` is to run::
 

	
 
 easy_install rhodecode
 

	
 
Or::
 

	
 
 pip install rhodecode
 

	
 
If you prefer to install manually simply grab latest release from
 
http://pypi.python.org/pypi/rhodecode, decompres archive and run::
 

	
 
   python setup.py install
 

	
 

	
 
Step by step installation example
 
---------------------------------
 

	
 

	
 
- Assuming You have installed virtualenv_ create one using. The `--no-site-packages`
 
  will make sure non of Your system libs are linked with this virtualenv_  
 

	
 
::
 

	
 
 virtualenv --no-site-packages /var/www/rhodecode-venv
 

	
 
- this will install new virtualenv_ into `/var/www/rhodecode-venv`. 
 
- Activate the virtualenv_ by running 
 

	
 
::
 

	
 
  source activate /var/www/rhodecode-venv/bin/activate
 
     
 
- Make a folder for rhodecode somewhere on the filesystem for example 
 

	
0 comments (0 inline, 0 general)