CARVIEW |
Select Language
HTTP/2 302
server: nginx
date: Sat, 16 Aug 2025 15:45:16 GMT
content-type: text/plain; charset=utf-8
content-length: 0
x-archive-redirect-reason: found capture at 20090421043059
location: https://web.archive.org/web/20090421043059/https://github.com/rubyist/aasm/tree/
server-timing: captures_list;dur=0.795110, exclusion.robots;dur=0.055114, exclusion.robots.policy;dur=0.012839, esindex;dur=0.014701, cdx.remote;dur=7.889429, LoadShardBlock;dur=266.654115, PetaboxLoader3.datanode;dur=68.133917, PetaboxLoader3.resolve;dur=60.693287
x-app-server: wwwb-app204
x-ts: 302
x-tr: 299
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=1
set-cookie: wb-p-SERVER=wwwb-app204; path=/
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 301
server: nginx
date: Sat, 16 Aug 2025 15:45:17 GMT
content-type: text/html; charset=utf-8
content-length: 108
x-archive-orig-server: nginx/0.6.31
x-archive-orig-date: Tue, 21 Apr 2009 04:30:58 GMT
x-archive-orig-connection: close
x-archive-orig-status: 301 Moved Permanently
location: https://web.archive.org/web/20090421043059/https://github.com/rubyist/aasm/tree/master
x-archive-orig-x-runtime: 8ms
x-archive-orig-cache-control: no-cache
x-archive-orig-content-length: 108
cache-control: max-age=1800
memento-datetime: Tue, 21 Apr 2009 04:30:59 GMT
link: ; rel="original", ; rel="timemap"; type="application/link-format", ; rel="timegate", ; rel="first memento"; datetime="Sun, 02 Mar 2008 15:01:49 GMT", ; rel="prev memento"; datetime="Sun, 19 Apr 2009 06:07:58 GMT", ; rel="memento"; datetime="Tue, 21 Apr 2009 04:30:59 GMT", ; rel="next memento"; datetime="Fri, 19 Jun 2009 07:06:37 GMT", ; rel="last memento"; datetime="Fri, 23 Apr 2010 21:56:39 GMT"
content-security-policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src: 52_9_20090421031837_crawl103-c/52_9_20090421043011_crawl101.arc.gz
server-timing: captures_list;dur=0.810211, exclusion.robots;dur=0.031277, exclusion.robots.policy;dur=0.013271, esindex;dur=0.014906, cdx.remote;dur=8.168424, LoadShardBlock;dur=162.452785, PetaboxLoader3.datanode;dur=92.559616, PetaboxLoader3.resolve;dur=170.188122, load_resource;dur=120.919944
x-app-server: wwwb-app204
x-ts: 301
x-tr: 324
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 200
server: nginx
date: Sat, 16 Aug 2025 15:45:17 GMT
content-type: text/html; charset=utf-8
x-archive-orig-server: nginx/0.6.31
x-archive-orig-date: Tue, 21 Apr 2009 04:30:58 GMT
x-archive-orig-connection: close
x-archive-orig-status: 200 OK
x-archive-orig-x-runtime: 175ms
x-archive-orig-etag: "23e2ef63151fa674e9cf1d0a2ad27fb0"
x-archive-orig-cache-control: private, max-age=0, must-revalidate
x-archive-orig-content-length: 24818
x-archive-guessed-content-type: text/html
x-archive-guessed-charset: iso-8859-1
memento-datetime: Tue, 21 Apr 2009 04:30:59 GMT
link: ; rel="original", ; rel="timemap"; type="application/link-format", ; rel="timegate", ; rel="first memento"; datetime="Sun, 02 Mar 2008 15:01:49 GMT", ; rel="prev memento"; datetime="Sun, 19 Apr 2009 06:07:58 GMT", ; rel="memento"; datetime="Tue, 21 Apr 2009 04:30:59 GMT", ; rel="next memento"; datetime="Sat, 02 May 2009 06:05:39 GMT", ; rel="last memento"; datetime="Fri, 04 Jul 2025 02:00:04 GMT"
content-security-policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src: 52_9_20090421031837_crawl103-c/52_9_20090421043011_crawl101.arc.gz
server-timing: captures_list;dur=0.539943, exclusion.robots;dur=0.018924, exclusion.robots.policy;dur=0.007959, esindex;dur=0.011492, cdx.remote;dur=18.161520, LoadShardBlock;dur=262.652103, PetaboxLoader3.datanode;dur=225.350167, PetaboxLoader3.resolve;dur=130.389389, load_resource;dur=115.962820
x-app-server: wwwb-app204
x-ts: 200
x-tr: 466
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=1
x-location: All
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
content-encoding: gzip
rubyist's aasm at master - GitHub
This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (

This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (

Run the following if you haven't already:
gem sources -a https://gems.github.com
Install the gem(s):
sudo gem install rubyist-aasm
Description: | AASM - State machines for Ruby classes |
Homepage: | https://rubyi.st/aasm |
Clone URL: |
git://github.com/rubyist/aasm.git
Give this clone URL to anyone.
git clone git://github.com/rubyist/aasm.git
|

Johan Sørensen (author)
Fri Feb 06 06:49:24 -0800 2009
aasm /
name | age | message | |
---|---|---|---|
![]() |
.gitignore | Wed Jul 09 16:42:04 -0700 2008 | Fixing version number in README.rdoc. [eric] |
![]() |
CHANGELOG | Mon Jun 23 06:02:21 -0700 2008 | update changelog [Scott Barron] |
![]() |
MIT-LICENSE | Thu Feb 21 09:54:42 -0800 2008 | Add .aasm_states method to get a list of all st... [Scott Barron] |
![]() |
README.rdoc | Mon Dec 29 07:05:07 -0800 2008 | Fix misleading example which uses a 'new' state... [Scott Barron] |
![]() |
Rakefile | Fri Dec 12 07:05:09 -0800 2008 | exclude rcov.rb from rcov report [Scott Barron] |
![]() |
TODO | Sat May 31 15:08:12 -0700 2008 | Support enter and exit actions on states [Scott Barron] |
![]() |
aasm.gemspec | Tue Dec 30 06:59:07 -0800 2008 | bump revision [Scott Barron] |
![]() |
aasm.rb | Mon Jan 07 11:11:38 -0800 2008 | Import into git [Scott Barron] |
![]() |
doc/ | Thu Feb 21 08:41:56 -0800 2008 | Prepare rakefile and rake tasks for gem packagi... [Scott Barron] |
![]() |
lib/ | Fri Feb 06 07:34:41 -0800 2009 | Ruby 1.9 compat Signed-off-by: Scott Barron <s... [Johan Sørensen] |
![]() |
spec/ | Tue Dec 30 06:54:12 -0800 2008 | Don't add named_scope if the ActiveRecord objec... [joshknowles] |
AASM - Ruby state machines
This package contains AASM, a library for adding finite state machines to Ruby classes.
AASM started as the acts_as_state_machine plugin but has evolved into a more generic library that no longer targets only ActiveRecord models.
AASM has the following features:
- States
- Machines
- Events
- Transitions
Download
The latest AASM can currently be pulled from the git repository on github.
A release and a gem are forthcoming.
Installation
From GitHub hosted gems
% sudo gem sources -a https://gems.github.com # (you only need to do this once) % sudo gem install rubyist-aasm
Building your own gems
% rake gem % sudo gem install pkg/aasm-2.0.1.gem
Simple Example
Here’s a quick example highlighting some of the features.
class Conversation include AASM aasm_initial_state :unread aasm_state :unread aasm_state :read aasm_state :closed aasm_event :view do transitions :to => :read, :from => [:unread] end aasm_event :close do transitions :to => :closed, :from => [:read, :unread] end end
Other Stuff
Author: | Scott Barron <scott at elitists dot net> |
License: | Copyright 2006, 2007, 2008 by Scott Barron. Released under an MIT-style license. See the LICENSE file included in the distribution. |
Bugs: | rubyist.lighthouseapp.com/projects/13207-aasm/ |
GitHub: | github.com/rubyist/aasm/tree/master |
Warranty
This software is provided "as is" and without any express or implied warranties, including, without limitation, the implied warranties of merchantibility and fitness for a particular purpose.
This feature is coming soon. Sit tight!