{ "info": { "author": "Roy Hyunjin Han", "author_email": "starsareblueandfaraway@gmail.com", "bugtrack_url": null, "classifiers": [ "Framework :: Pylons", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python" ], "description": "Pyramid application scaffolds based on invisibleroads.com\n=========================================================\nThe Pyramid scaffolds in this package provide user account management based on `invisibleroads.com `_.\n\n`Pyramid `_ is a web application framework that is the successor to `Pylons `_ and `repoze.bfg `_. Thanks to Chris McDonough, Mike Bayer, Mike Orr, Ben Bangert and the other developers of Pyramid, Pylons and Python.\n\n\nInstallation\n------------\n::\n\n # Prepare isolated environment\n PYRAMID_ENV=$HOME/Projects/pyramid-env\n virtualenv $PYRAMID_ENV \n # Activate isolated environment\n source $PYRAMID_ENV/bin/activate\n # Install packages\n pip install --upgrade ipython ipdb nose coverage distribute invisibleroads-scaffolds\n\n\nUsage\n-----\n::\n\n # Activate isolated environment\n source $PYRAMID_ENV/bin/activate\n # Enter workspace\n PROJECTS=$HOME/Projects\n cd $PROJECTS\n # List available scaffolds\n pcreate --list-templates\n # Create an application\n pcreate -t ir_core example\n\n\n1.8.0\n-----\n- Added openID support\n- Added SMSAddress registration confirmation\n- Added UploadsCached validator\n- Added utilities/update.sh\n- Changed signature for cellToggle(tdSelector, options)\n- Changed signature for $.fn.prepareTableOverlayForm($table, trSelector)\n- Fixed IE compatibility issues\n- Used jquery.tokenInput.min.js instead of jquery.autoComplete.min.js\n\n1.7.9\n-----\n- Added alternate server utilities/serve.py using gevent\n- Added autoCompleteProxy() to replace select controls that have many options\n- Added User.unpack_properties to replace unpack_user_properties\n- Added parameter SITE_DOMAIN\n- Added users.mail_users()\n- Fixed timezoneOffset initialization to handle negative offsets\n- Fixed clickToggle() so that flag matches size and color of parent\n- Moved robots.txt into static folder\n- Updated validators\n- Used request.static_path() instead of request.static_url() to support https\n\n1.7.8\n-----\n- Incorporated enhancements from Pyramid 1.2\n- Updated forms to use vertical format\n- Reorganized sensitive configuration file format\n- Placed common form validators in validators.py\n- Added email notification to leaders when a new account requires activation\n- Added email notification to user when account is activated or promoted\n- Added support for form tabs and tooltips\n- Added support for formTips by className as well as name\n- Added port-locking to command-line scripts to ensure singleton instances\n- Added tests for 100% code coverage for PostgreSQL\n- Rewrote testing framework\n\n1.7.7\n-----\n- Added AJAX style file uploads\n- Rewrote javascript for form enhancements\n- Rewrote javascript for table enhancements\n- Updated SMS address management interface in users/change.mako\n- Fixed evaluation of settings['debug_templates']\n\n1.7.6\n-----\n- Increased test coverage to 100% given SMS IMAP configuration\n- Enforced model-side case-insensitive evaluation of encrypted email addresses\n- Fixed user account administrative interface in users/index.mako\n- Added User.is_member and User.is_leader hybrid properties for flexibility\n- Updated code to be compatible with Pyramid 1.1a4\n\n1.7.5\n-----\n- Restructured user roles and permissions\n- Used User.role instead of User.is_super and User.is_active\n- Used argparse instead of optparse in utilities/script_process.py\n- Added users.unpack_properties() for more flexible property retrieval\n- Added row-based interface example\n\n1.7.4\n-----\n- Added robots.txt with default exclusion from search engine crawlers\n- Added get_remote_ip()\n- Added $.ajaxSetup for general error handling\n- Used prop('disabled', true) instead of attr('disabled', 'disabled')\n- Used e.which instead of e.keyCode\n- Upgraded to jQuery 1.6.1\n\n1.7.3\n-----\n- Changed to cryptacular.bcrypt() for password hash\n- Changed to urandom() for authtkt.secret and session.secret\n- Added server-side check for user.is_active, user.is_super\n- Let superuser activate or deactivate other users\n- Added mechanism for user to invalidate other sessions\n- Moved imapIO to a separate package in PyPI\n- Reverted SMS address registration so that users register by sending an SMS\n- Increased test coverage to 96%\n\n1.7.2\n-----\n- Added test for unicode usernames, passwords, nicknames, emails\n- Fixed username, password, nickname, email to be unicode-friendly\n- Fixed tools.hash, tools.encrypt, tools.decrypt to be unicode-friendly\n- Created SQLAlchemy types Encrypted, LowercaseEncrypted\n- Encrypted the storage of email addresses\n- Let superusers promote or demote other users\n- Added redirect to login page if AJAX request does not return JSON\n- Set poolclass to sqlalchemy.NullPool for SQLite file-based databases\n\n1.7.1\n-----\n- Moved whenIO to a separate package in PyPI\n\n1.7.0\n-----\n- Migrated from Pylons to Pyramid\n- Changed authentication from Beaker sessions to AuthTkt cookies\n- Changed authorization from manual enforcement to ACLAuthorizationPolicy\n- Restored ability to set sensitive information in dotted configuration files\n- Updated javascript event binding to use jQuery's live()\n- Changed SMS address registration so that user enters SMS address manually\n- Added timezone offset display functionality to whenIO\n- Added DataTables jQuery plugin to user list page", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/invisibleroads/invisibleroads-scaffolds", "keywords": "web wsgi bfg pylons pyramid", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "invisibleroads-scaffolds", "package_url": "https://pypi.org/project/invisibleroads-scaffolds/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/invisibleroads-scaffolds/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/invisibleroads/invisibleroads-scaffolds" }, "release_url": "https://pypi.org/project/invisibleroads-scaffolds/1.8.0/", "requires_dist": null, "requires_python": null, "summary": "Pyramid application scaffolds based on invisibleroads.com", "version": "1.8.0" }, "last_serial": 758949, "releases": { "1.7.8": [ { "comment_text": "", "digests": { "md5": "06038c1f6f57a542d8d64b181ee6124f", "sha256": "2df7f4148cd6bc92378c93ae17ab8a37f8c6310234473503d3f741380bf543e6" }, "downloads": -1, "filename": "invisibleroads-scaffolds-1.7.8.tar.gz", "has_sig": false, "md5_digest": "06038c1f6f57a542d8d64b181ee6124f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 94750, "upload_time": "2011-09-30T05:28:44", "url": "https://files.pythonhosted.org/packages/0d/99/9e2922700250df7663436e273e108153bca71dba5208dc4f3abad1d79b01/invisibleroads-scaffolds-1.7.8.tar.gz" } ], "1.7.9": [ { "comment_text": "", "digests": { "md5": "0086e8c8128b0b51747c00a57fe5579c", "sha256": "811be29834ff55c08600715b9515a7c81fef7875aa4ee943878693d60aa79e20" }, "downloads": -1, "filename": "invisibleroads-scaffolds-1.7.9.tar.gz", "has_sig": false, "md5_digest": "0086e8c8128b0b51747c00a57fe5579c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4265, "upload_time": "2011-12-01T23:50:55", "url": "https://files.pythonhosted.org/packages/2f/55/ed3969914cf9d50e6174dbb30def9bfd7499812c8948166e666aa159486d/invisibleroads-scaffolds-1.7.9.tar.gz" } ], "1.8.0": [ { "comment_text": "", "digests": { "md5": "256d916f17b835285d3267207b699cb8", "sha256": "fc342f79db19999183e3fd71707197a33b61839a105908348dffb1745645b165" }, "downloads": -1, "filename": "invisibleroads-scaffolds-1.8.0.tar.gz", "has_sig": false, "md5_digest": "256d916f17b835285d3267207b699cb8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4422, "upload_time": "2012-02-19T07:22:05", "url": "https://files.pythonhosted.org/packages/e2/d7/c037aca75254783a6bf3e4ca06833ac44df914eb1ae9c5c696f3119aa608/invisibleroads-scaffolds-1.8.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "256d916f17b835285d3267207b699cb8", "sha256": "fc342f79db19999183e3fd71707197a33b61839a105908348dffb1745645b165" }, "downloads": -1, "filename": "invisibleroads-scaffolds-1.8.0.tar.gz", "has_sig": false, "md5_digest": "256d916f17b835285d3267207b699cb8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4422, "upload_time": "2012-02-19T07:22:05", "url": "https://files.pythonhosted.org/packages/e2/d7/c037aca75254783a6bf3e4ca06833ac44df914eb1ae9c5c696f3119aa608/invisibleroads-scaffolds-1.8.0.tar.gz" } ] }