1d4f1f6bf6
Added some of the standard directories darcs-hash:20080506151729-84dde-563da8505e06a7302041c93ab157ced31165876c.gz
475 lines
20 KiB
Plaintext
475 lines
20 KiB
Plaintext
Starting with tag:
|
|
[TAG 0.2
|
|
Evan Prodromou <evan@prodromou.name>**20080522172623]
|
|
[tags and XRDS
|
|
Evan Prodromou <evan@prodromou.name>**20080522183421
|
|
|
|
Starting the process of remote subscriptions.
|
|
|
|
First, add the capacity to mint tags. May in the future want to allow
|
|
some kind of UUID or URL for unique URIs. New config options for tag
|
|
authority and date, and a function for minting tags.
|
|
|
|
Store URIs in the DB. If the admin changes his/her tag config, this
|
|
shouldn't change the URIs in the DB. Unless they really want to make
|
|
that happen.
|
|
|
|
Generate an XRDS document with the appropriate URLs for microblogging.
|
|
Also, redefined some stuff in openmicroblogging.txt. And moved the file.
|
|
|
|
]
|
|
[typo in common_mint_tag
|
|
Evan Prodromou <evan@prodromou.name>**20080522184027]
|
|
[generate classes for db schema with URIs
|
|
Evan Prodromou <evan@prodromou.name>**20080522184109]
|
|
[use notice URIs in RSS feeds
|
|
Evan Prodromou <evan@prodromou.name>**20080522184434]
|
|
[add tags on creation of notices and users
|
|
Evan Prodromou <evan@prodromou.name>**20080522185500]
|
|
[use notice URI in channel items list
|
|
Evan Prodromou <evan@prodromou.name>**20080522191028]
|
|
[fix notice generation in rss channels
|
|
Evan Prodromou <evan@prodromou.name>**20080522191436]
|
|
[oauth discovery and all new actions
|
|
Evan Prodromou <evan@prodromou.name>**20080526112700
|
|
|
|
Updated the spec to include OAuth discovery.
|
|
|
|
Added new actions for all the OMB URLs.
|
|
|
|
]
|
|
[update for new version of OMB protocol
|
|
Evan Prodromou <evan@prodromou.name>**20080526130328
|
|
|
|
After finding OAuth Discovery, I rewrote the OMB spec to support it
|
|
better. This version of the XRDS generator supports OAuth Discovery
|
|
more completely.
|
|
|
|
]
|
|
[fixups for xrds
|
|
Evan Prodromou <evan@prodromou.name>**20080526131551
|
|
|
|
Corrected the definition of showService to show all the parameters.
|
|
|
|
Fixed the localID part so it uses $user->uri; getUri() was throwing an
|
|
error.
|
|
|
|
]
|
|
[fix typo in xrds
|
|
Evan Prodromou <evan@prodromou.name>**20080526131953
|
|
|
|
I'd spelled "ENDPOINT" as "ENDPONT" in the code. whoops!
|
|
|
|
]
|
|
[move OMB and OAUTH defs to their own lib file
|
|
Evan Prodromou <evan@prodromou.name>**20080526151332]
|
|
[client side of distributed subscription almost complete
|
|
Evan Prodromou <evan@prodromou.name>**20080527114219]
|
|
[server-side storage model
|
|
Evan Prodromou <evan@prodromou.name>**20080527200721
|
|
|
|
First pass at a server-side storage model. New tables for consumers,
|
|
tokens, and nonces, with associated classes. An OAuthDataStore class
|
|
interfaces with the OAuth.php library to enable server logic.
|
|
|
|
Some additional work to get pretty-OK random number generation into
|
|
the utilities library. Use /dev/urandom if available; else use
|
|
mt_rand().
|
|
|
|
]
|
|
[remove bogus validation code
|
|
Evan Prodromou <evan@prodromou.name>**20080528134804]
|
|
[add timestamp to avatar filenames to prevent overlap
|
|
Evan Prodromou <evan@prodromou.name>**20080528140321]
|
|
[fix submit button for avatar
|
|
Evan Prodromou <evan@prodromou.name>**20080528141432]
|
|
[fix source link
|
|
Evan Prodromou <evan@prodromou.name>**20080528141555]
|
|
[better timestamped avatar filenames
|
|
Evan Prodromou <evan@prodromou.name>**20080528143030]
|
|
[don't scale avatar if original already matches size
|
|
Evan Prodromou <evan@prodromou.name>**20080528144202]
|
|
[registration requires accepting the license
|
|
Evan Prodromou <evan@prodromou.name>**20080528164222]
|
|
[move license label to _after_ the checkbox
|
|
Evan Prodromou <evan@prodromou.name>**20080528170438]
|
|
[get rid of the license label, since it mucks everything else up.
|
|
Evan Prodromou <evan@prodromou.name>**20080528170556]
|
|
[show error messages in registration form
|
|
Evan Prodromou <evan@prodromou.name>**20080528170752]
|
|
[fix cc license url
|
|
Evan Prodromou <evan@prodromou.name>**20080528171012]
|
|
[float text of license stuff right, to make a more pleasing license block
|
|
Evan Prodromou <evan@prodromou.name>**20080528171232]
|
|
[try to float license image left again
|
|
Evan Prodromou <evan@prodromou.name>**20080528171434]
|
|
[try to float license text right
|
|
Evan Prodromou <evan@prodromou.name>**20080528171543]
|
|
[fixed widths
|
|
Evan Prodromou <evan@prodromou.name>**20080528171626]
|
|
[add span around license link
|
|
Evan Prodromou <evan@prodromou.name>**20080528171758]
|
|
[add greenBg for license
|
|
Evan Prodromou <evan@prodromou.name>**20080528171944]
|
|
[whole footer has greenBg
|
|
Evan Prodromou <evan@prodromou.name>**20080528172041]
|
|
[undo that
|
|
Evan Prodromou <evan@prodromou.name>**20080528172149]
|
|
[paginate on showstream
|
|
Evan Prodromou <evan@prodromou.name>**20080528173129]
|
|
[forgot commas!
|
|
Evan Prodromou <evan@prodromou.name>**20080528173231]
|
|
[better page numbers
|
|
Evan Prodromou <evan@prodromou.name>**20080528173417]
|
|
[add pagination to all and public
|
|
Evan Prodromou <evan@prodromou.name>**20080528173917]
|
|
[update TODOs and try to reformat notices
|
|
Evan Prodromou <evan@prodromou.name>**20080528174247]
|
|
[change to use correct width classes
|
|
Evan Prodromou <evan@prodromou.name>**20080528174412]
|
|
[take out spans
|
|
Evan Prodromou <evan@prodromou.name>**20080528174621]
|
|
[take out avatar floatleft
|
|
Evan Prodromou <evan@prodromou.name>**20080528174807]
|
|
[take out content rendering, seems to do something strange
|
|
Evan Prodromou <evan@prodromou.name>**20080528174924]
|
|
[add doc action
|
|
Evan Prodromou <evan@prodromou.name>**20080528182707]
|
|
[error in file_exists()
|
|
Evan Prodromou <evan@prodromou.name>**20080528183022]
|
|
[stub of about
|
|
Evan Prodromou <evan@prodromou.name>**20080528183709]
|
|
[add more docs
|
|
Evan Prodromou <evan@prodromou.name>**20080528185637]
|
|
[source document
|
|
Evan Prodromou <evan@prodromou.name>**20080528193121]
|
|
[dump args to browser for debugging
|
|
Evan Prodromou <evan@prodromou.name>**20080529151317]
|
|
[fix checking boolean parameters
|
|
Evan Prodromou <evan@prodromou.name>**20080529151602]
|
|
[even better boolean handling
|
|
Evan Prodromou <evan@prodromou.name>**20080529152304]
|
|
[mark some TODOs done
|
|
Evan Prodromou <evan@prodromou.name>**20080529163508]
|
|
[use common_render_content
|
|
Evan Prodromou <evan@prodromou.name>**20080529164139]
|
|
[reformat showstream
|
|
Evan Prodromou <evan@prodromou.name>**20080529164411]
|
|
[@ messages
|
|
Evan Prodromou <evan@prodromou.name>**20080529170801]
|
|
[loosen restrictions on names for atlinks
|
|
Evan Prodromou <evan@prodromou.name>**20080529171604]
|
|
[fixup atlink generator a bit
|
|
Evan Prodromou <evan@prodromou.name>**20080529171853]
|
|
[dummy atlinkin
|
|
Evan Prodromou <evan@prodromou.name>**20080529172107]
|
|
[more debugging crap
|
|
Evan Prodromou <evan@prodromou.name>**20080529172205]
|
|
[remove debug string
|
|
Evan Prodromou <evan@prodromou.name>**20080529172258]
|
|
[don't check for notice in rendering content; just render it!
|
|
Evan Prodromou <evan@prodromou.name>**20080529172549]
|
|
[better regular expression for atlinks
|
|
Evan Prodromou <evan@prodromou.name>**20080529173234]
|
|
[special chars for raw links in atlinks
|
|
Evan Prodromou <evan@prodromou.name>**20080529173400]
|
|
[fix render in showstream
|
|
Evan Prodromou <evan@prodromou.name>**20080529173527]
|
|
[keep the ampersand in atlinks
|
|
Evan Prodromou <evan@prodromou.name>**20080529173635]
|
|
[linkify URLs
|
|
Evan Prodromou <evan@prodromou.name>**20080529181244]
|
|
[remove url regex
|
|
Evan Prodromou <evan@prodromou.name>**20080529181321]
|
|
[use q's for regex delimiter
|
|
Evan Prodromou <evan@prodromou.name>**20080529181549]
|
|
[bad regex again
|
|
Evan Prodromou <evan@prodromou.name>**20080529181623]
|
|
[one more try on the preg delimiter
|
|
Evan Prodromou <evan@prodromou.name>**20080529181942]
|
|
[remove URL check again
|
|
Evan Prodromou <evan@prodromou.name>**20080529182026]
|
|
[more regex fun
|
|
Evan Prodromou <evan@prodromou.name>**20080529182725]
|
|
[ar
|
|
Evan Prodromou <evan@prodromou.name>**20080529182754]
|
|
[linkify URLs
|
|
Evan Prodromou <evan@prodromou.name>**20080529190702]
|
|
[move linkifying so URL links come first
|
|
Evan Prodromou <evan@prodromou.name>**20080529190743]
|
|
[change number of subscriptions per row
|
|
Evan Prodromou <evan@prodromou.name>**20080529192112]
|
|
[don't render content in RSS feeds
|
|
Evan Prodromou <evan@prodromou.name>**20080529192510]
|
|
[interim commit after pull from server
|
|
Evan Prodromou <evan@prodromou.name>**20080530142324]
|
|
[common function for turning a relative path into a full URL
|
|
Evan Prodromou <evan@prodromou.name>**20080530162429]
|
|
[remotesubscribe form
|
|
Evan Prodromou <evan@prodromou.name>**20080530174310]
|
|
[fix path for requiring oauthstore
|
|
Evan Prodromou <evan@prodromou.name>**20080530174616]
|
|
[check that services are null in yadis check
|
|
Evan Prodromou <evan@prodromou.name>**20080530175055]
|
|
[show footer for remotesubscribe form
|
|
Evan Prodromou <evan@prodromou.name>**20080530175235]
|
|
[add a print_r for the yadis doc returned
|
|
Evan Prodromou <evan@prodromou.name>**20080530175436]
|
|
[correct content-type on XRDS document
|
|
Evan Prodromou <evan@prodromou.name>**20080530181029]
|
|
[check to see if XRDS discovery failed
|
|
Evan Prodromou <evan@prodromou.name>**20080530181103]
|
|
[add debug logging and do some from the remotesubscribe page
|
|
Evan Prodromou <evan@prodromou.name>**20080530182230]
|
|
[add X-XRDS-Location header
|
|
Evan Prodromou <evan@prodromou.name>**20080530183528]
|
|
[typo in checking for YADIS failure
|
|
Evan Prodromou <evan@prodromou.name>**20080530184105]
|
|
[better debug messages
|
|
Evan Prodromou <evan@prodromou.name>**20080530184712]
|
|
[debug message for when services returns null
|
|
Evan Prodromou <evan@prodromou.name>**20080530184925]
|
|
[no pid in syslog
|
|
Evan Prodromou <evan@prodromou.name>**20080530185015]
|
|
[check xrds object
|
|
Evan Prodromou <evan@prodromou.name>**20080530185343]
|
|
[parse the XRDS results
|
|
Evan Prodromou <evan@prodromou.name>**20080530190446
|
|
|
|
Apparently you have to parse the XRDS results from the discovery
|
|
result object. Who knew?
|
|
|
|
]
|
|
[start handling fancy URLs
|
|
Evan Prodromou <evan@prodromou.name>**20080530212555]
|
|
[set proper row sizes
|
|
Evan Prodromou <evan@prodromou.name>**20080601020132]
|
|
[better handling of XRDS files
|
|
Evan Prodromou <evan@prodromou.name>**20080602174249
|
|
|
|
Our generated XRDS files contain 3 XRD elements: one for OAuth, one
|
|
for OMB, and one to point to the other two. Auth_Yadis only gives us
|
|
the last one, so we have to use it to find the other two, and then
|
|
extract service URLs from them.
|
|
|
|
Kind of fragile code, probably won't hold up under complicated
|
|
topologies, and won't work at all if the XRDs are in another XRDS
|
|
container. I tried to use XRDS filtering to get the top-priority
|
|
version of XRDs, services, and URIs, but Laconica's output doesn't use
|
|
any of that stuff and I don't particularly want to test it.
|
|
|
|
]
|
|
[move service-matching callbacks to library
|
|
Evan Prodromou <evan@prodromou.name>**20080602175725]
|
|
[use omb_service_filter() rather than omb_match_service()
|
|
Evan Prodromou <evan@prodromou.name>**20080602175936]
|
|
[fix dynamically-created code
|
|
Evan Prodromou <evan@prodromou.name>**20080602180108]
|
|
[add some debugging stuff for problems with remote subscribe
|
|
Evan Prodromou <evan@prodromou.name>**20080602181254]
|
|
[services() returns an array
|
|
Evan Prodromou <evan@prodromou.name>**20080602181759]
|
|
[trim whitespace
|
|
Evan Prodromou <evan@prodromou.name>**20080602181857]
|
|
[make a nodes variable to pass nodes by reference
|
|
Evan Prodromou <evan@prodromou.name>**20080602182153]
|
|
[fix assignment of omb stuff
|
|
Evan Prodromou <evan@prodromou.name>**20080602183314]
|
|
[debug info
|
|
Evan Prodromou <evan@prodromou.name>**20080602183911]
|
|
[minor corrections for OMB discovery
|
|
Evan Prodromou <evan@prodromou.name>**20080602185137]
|
|
[typo in LocalID generation in xrds
|
|
Evan Prodromou <evan@prodromou.name>**20080602185452]
|
|
[fix URLs for OMB endpoints
|
|
Evan Prodromou <evan@prodromou.name>**20080602185618]
|
|
[add a namespace when checking for LocalID element
|
|
Evan Prodromou <evan@prodromou.name>**20080602190357]
|
|
[get content of element rather than raw element
|
|
Evan Prodromou <evan@prodromou.name>**20080602191039]
|
|
[add some debugging output to request token request
|
|
Evan Prodromou <evan@prodromou.name>**20080602192018]
|
|
[fixup caching problem with server variable
|
|
Evan Prodromou <evan@prodromou.name>**20080602192242]
|
|
[correct name of data store class
|
|
Evan Prodromou <evan@prodromou.name>**20080602192526]
|
|
[fixup classes
|
|
Evan Prodromou <evan@prodromou.name>**20080602192820]
|
|
[correct server error output
|
|
Evan Prodromou <evan@prodromou.name>**20080602193851]
|
|
[add the hmac sha1 signature method to server
|
|
Evan Prodromou <evan@prodromou.name>**20080602194333]
|
|
[change names, update
|
|
Evan Prodromou <evan@prodromou.name>**20080602195138]
|
|
[fix consumer fetching, nonce making
|
|
Evan Prodromou <evan@prodromou.name>**20080602200645]
|
|
[get rid of callback nonce
|
|
Evan Prodromou <evan@prodromou.name>**20080602201707]
|
|
[debugging code for userauthorization
|
|
Evan Prodromou <evan@prodromou.name>**20080602203142]
|
|
[more debug code
|
|
Evan Prodromou <evan@prodromou.name>**20080602203802]
|
|
[trying to find out why auth request is going to requesttoken
|
|
Evan Prodromou <evan@prodromou.name>**20080602205534]
|
|
[move debugging code for checking URIs of XRD
|
|
Evan Prodromou <evan@prodromou.name>**20080602205921]
|
|
[more debugging, don't reuse variable
|
|
Evan Prodromou <evan@prodromou.name>**20080603104859]
|
|
[typo in use of omb_service_uri()
|
|
Evan Prodromou <evan@prodromou.name>**20080603110749]
|
|
[restructure filters on services
|
|
Evan Prodromou <evan@prodromou.name>**20080603111750]
|
|
[one more stab at type matching, plus debug message
|
|
Evan Prodromou <evan@prodromou.name>**20080603113626]
|
|
[fix service discovery (I think)
|
|
Evan Prodromou <evan@prodromou.name>**20080603114317]
|
|
[clear out lots of debugging code, add require to userauthorization
|
|
Evan Prodromou <evan@prodromou.name>**20080603115218]
|
|
[remove call to private get-version() method
|
|
Evan Prodromou <evan@prodromou.name>**20080603115839]
|
|
[full interface for userauthorization
|
|
Evan Prodromou <evan@prodromou.name>**20080604185131]
|
|
[fix passing request around
|
|
Evan Prodromou <evan@prodromou.name>**20080604191206]
|
|
[add some debugging code
|
|
Evan Prodromou <evan@prodromou.name>**20080604201123]
|
|
[automatically prepend filename to debug output
|
|
Evan Prodromou <evan@prodromou.name>**20080605024035]
|
|
[move filename stuff to debug function
|
|
Evan Prodromou <evan@prodromou.name>**20080605024717]
|
|
[move stoica schema to laconica
|
|
Evan Prodromou <evan@prodromou.name>**20080605024807]
|
|
[correct order of params in get_token
|
|
Evan Prodromou <evan@prodromou.name>**20080605025152]
|
|
[clear request doesn't need an argument
|
|
Evan Prodromou <evan@prodromou.name>**20080605025611]
|
|
[don't validate listenee URI
|
|
Evan Prodromou <evan@prodromou.name>**20080605033911
|
|
|
|
Validation of the listenee URI was failing for tag: URIs. So,
|
|
abandoned validation for now. Maybe in the future I'll add it back in,
|
|
with a second check for a valid tag URI if it doesn't work.
|
|
|
|
]
|
|
[decided to validate tag uris rather than not validating any uris
|
|
Evan Prodromou <evan@prodromou.name>**20080605040153]
|
|
[bad validation of callback URL
|
|
Evan Prodromou <evan@prodromou.name>**20080605040358]
|
|
[a
|
|
Evan Prodromou <evan@prodromou.name>**20080605183419]
|
|
[new TODOs
|
|
Evan Prodromou <evan@prodromou.name>**20080605190614]
|
|
[move avatar scaling and saving to Avatar and Profile
|
|
Evan Prodromou <evan@prodromou.name>**20080605193708
|
|
|
|
Extracted the code for setting a new original avatar to the Profile
|
|
class, and moved some of it to Avatar, too. This makes it easier to
|
|
have the same functionality whether an avatar is set using the profile
|
|
settings (for our users), or on a remote subscription. Necessitated
|
|
changing the filenaming function to just take an ID.
|
|
|
|
]
|
|
[setOriginal() is an instance method
|
|
Evan Prodromou <evan@prodromou.name>**20080605195222]
|
|
[passing id to the avatar filename function
|
|
Evan Prodromou <evan@prodromou.name>**20080605195500]
|
|
[show error correctly in login
|
|
Evan Prodromou <evan@prodromou.name>**20080605200759]
|
|
[debugging info on finished remote subscribe
|
|
Evan Prodromou <evan@prodromou.name>**20080606040946]
|
|
[listenee is nickname, not URI
|
|
Evan Prodromou <evan@prodromou.name>**20080606043405]
|
|
[fix args in returnto
|
|
Evan Prodromou <evan@prodromou.name>**20080606051331]
|
|
[don't clone arrays!
|
|
Evan Prodromou <evan@prodromou.name>**20080606051823]
|
|
[use $_GET, not $args
|
|
Evan Prodromou <evan@prodromou.name>**20080606052117]
|
|
[handle errors in authorizing and saving remote profile
|
|
Evan Prodromou <evan@prodromou.name>**20080606052631]
|
|
[debug info for authorizing token
|
|
Evan Prodromou <evan@prodromou.name>**20080606053321]
|
|
[seem to be storing tokens with null consumer keys
|
|
Evan Prodromou <evan@prodromou.name>**20080606053914]
|
|
[mixed up OAuthConsumer and Consumer classes
|
|
Evan Prodromou <evan@prodromou.name>**20080606054549]
|
|
[checks for user and sub in validate and better error check in remote save
|
|
Evan Prodromou <evan@prodromou.name>**20080606055439]
|
|
[remember to sign access token request with request token
|
|
Evan Prodromou <evan@prodromou.name>**20080606060000]
|
|
[mixed up token keys and OAuthToken objects
|
|
Evan Prodromou <evan@prodromou.name>**20080606060601]
|
|
[debugging output for new_access_token
|
|
Evan Prodromou <evan@prodromou.name>**20080606061556]
|
|
[debugging stuff in accesstoken action
|
|
Evan Prodromou <evan@prodromou.name>**20080606062235]
|
|
[debugging request for access token
|
|
Evan Prodromou <evan@prodromou.name>**20080606062958]
|
|
[store URL rather than service in $omb for bounce back
|
|
Evan Prodromou <evan@prodromou.name>**20080606063721]
|
|
[forgot to require libs in accesstoken
|
|
Evan Prodromou <evan@prodromou.name>**20080606064011]
|
|
[stash URLs for return and check all values for profiles
|
|
Evan Prodromou <evan@prodromou.name>**20080606065027]
|
|
[call postnotice when there's a remote subscription
|
|
Evan Prodromou <evan@prodromou.name>**20080606160437]
|
|
[move notice-posting stuff from util.php to omb.php
|
|
Evan Prodromou <evan@prodromou.name>**20080606162226]
|
|
[push yadis requirement into omb.php
|
|
Evan Prodromou <evan@prodromou.name>**20080606162659]
|
|
[debugging messages in broadcast remote
|
|
Evan Prodromou <evan@prodromou.name>**20080606171450]
|
|
[trim whitespace and more debugging for posting messages
|
|
Evan Prodromou <evan@prodromou.name>**20080606172239]
|
|
[dump sub and rp
|
|
Evan Prodromou <evan@prodromou.name>**20080606172638]
|
|
[fix name of join-adding method
|
|
Evan Prodromou <evan@prodromou.name>**20080606173804]
|
|
[quit trying to use fancy join and just loop
|
|
Evan Prodromou <evan@prodromou.name>**20080606174822]
|
|
[removing some noisy debug notices
|
|
Evan Prodromou <evan@prodromou.name>**20080606175254]
|
|
[bad signature because variable name was wrong
|
|
Evan Prodromou <evan@prodromou.name>**20080606180035]
|
|
[was using $notice->uri instead of $notice_uri
|
|
Evan Prodromou <evan@prodromou.name>**20080606180330]
|
|
[start doing some fancy URLs
|
|
Evan Prodromou <evan@prodromou.name>**20080606182044]
|
|
[use mod_rewrite to have prettier urls
|
|
Evan Prodromou <evan@prodromou.name>**20080606195136]
|
|
[fancy URLs
|
|
Evan Prodromou <evan@prodromou.name>**20080606200151]
|
|
[add cc:license to RSS streams
|
|
Evan Prodromou <evan@prodromou.name>**20080608201917]
|
|
[forgot config in channel
|
|
Evan Prodromou <evan@prodromou.name>**20080608201957]
|
|
[use rdf:resource for license urls
|
|
Evan Prodromou <evan@prodromou.name>**20080608203314]
|
|
[export FOAF
|
|
Evan Prodromou <evan@prodromou.name>**20080610121132]
|
|
[incorrectly used , instead of => in a surprising number of places
|
|
Evan Prodromou <evan@prodromou.name>**20080610121936]
|
|
[more specific fetchers
|
|
Evan Prodromou <evan@prodromou.name>**20080610122707]
|
|
[undo fancy URLs for omb endpoints
|
|
Evan Prodromou <evan@prodromou.name>**20080610123002
|
|
|
|
The OAuth library uses the $_GET and $_POST arrays for checking
|
|
signatures on requests. So, we need to make sure that the client sees
|
|
the same request parameters as the server (or callback). These don't
|
|
have to be particularly readable URLs, anyways, since they're mostly
|
|
"behind the scenes".
|
|
|
|
]
|
|
[ticking off a TODO
|
|
Evan Prodromou <evan@prodromou.name>**20080610142221]
|
|
[make presentation of remote subscribe nicer
|
|
Evan Prodromou <evan@prodromou.name>**20080610143709]
|
|
[add link for FOAF autodiscovery
|
|
Evan Prodromou <evan@prodromou.name>**20080610144420]
|
|
[close parens in showstream
|
|
Evan Prodromou <evan@prodromou.name>**20080610144606]
|
|
[fix getting subscribers
|
|
Evan Prodromou <evan@prodromou.name>**20080610145520]
|
|
[add another TODO
|
|
Evan Prodromou <evan@prodromou.name>**20080610150113] |