pyramid

Скріншот програми:
pyramid
Дані програми:
Версія: 1.4.2
Дата завантаження: 20 Feb 15
Розробник: Chris McDonough
Ліцензія: Безкоштовно
Популярність: 1

Rating: nan/5 (Total Votes: 0)

Піраміда швидкий, маленький, вниз до землі, рамки Python веб-розробки з відкритим вихідним кодом і NBSP ;. Це робить реальною розробку і впровадження більш весело, більш передбачуваною і більш продуктивну веб-додатків.
Піраміда проект Пілони і лежить в основі новітніх веб-платформами, вироблені спільноти пілонах.
Піраміда була раніше відома як repoze.bfg.
Підтримка та Документація
Відвідайте веб-сайт Пілони проекту, щоб переглянути документацію, повідомити про помилки і отримати підтримку.
Ліцензія
піраміда пропонується під BSD-отримані Repoze Public License

Що нового У цьому випуску :.

  • mako_templating: додана оборонні тимчасове рішення для не-importability Мако-за висхідного markupsafe знижується Python підтримку 3,2. Мако шаблонів більше не буде працювати в комбінації MarkupSafe 0,17 і Python 3.2 (хоча комбінація MarkupSafe 0,17 і Python 3.3 або в будь-якому з підтримуваних Python 2 версія буде працювати OK).
  • Зробіть pyramid.config.assets.PackageOverrides об'єкта реалізації API для __loader__ об'єктів, зазначених у PEP 302. Проксі до __loader__ встановленого імпортера, якщо вона є; В іншому випадку, виникає NotImplementedError. Це робить Піраміди статичний погляд перевизначення працювати під Python 3.3 (раніше вони не були б). См https://github.com/Pylons/pyramid/pull/1015 для отримання додаткової інформації.

Що нового у версії 1.4:

  • Fix функціональних тестів у навчальному посібнику ZODB

Що нового у версії 1.4 Beta 3:

  • випуск упаковки тільки, без зміни коду. 1.4b2 був brownbag випуск через відсутність каталоги в архіву.

Що нового у версії 1.3.4:

  • Коли pyramid.debug_routematch був включений і траверси предикат був використаний в будь-якому маршруті, маршрутизатор повинен викликати виключення при спробі надрукувати інформацію налагодження маршрут. Ця помилка існувала з 1.3a1.
  • Коли хід предикат був використаний в будь-якому маршруті, proutes і pviews скрипти консолі повинен викликати виключення при спробі надрукувати інформацію про маршрут налагодження. Ця помилка існувала з 1.3a1.
  • Backport Виправлена ​​помилка з майстер: - У Mako Шаблони пошуку, перевірки абсолютної URI (з використанням Мако каталоги), коли змішання спадкування специфікації активів. https://github.com/Pylons/pyramid/issues/662
  • При реєстрації декількох уявлень з приймаю предиката в додатку Піраміда запущені під Python 3, ви, можливо, отримав Помилка типу: unorderable типів: () функцію & лт; () Функція виняток.
  • Backport від майстра: HTTP Accept заголовки були нормалізовані в результаті чого потенційно конфліктуючих реєстрацій перегляду залишитися непоміченим. Два погляди, що відрізняються тільки у випадку ("текст / HTML" проти "текст / HTML") тепер викличе помилку. https://github.com/Pylons/pyramid/pull/620

Що нового у версії 1.4 Alpha 1:

  • Виправлена ​​помилка:
  • Переслати порт, з 1,3 галузі: Коли немає політики, аутентифікація ні налаштований, заклик до pyramid.security.effective_principals безумовно буде повертати порожній список. Це було неправильно, він повинен бути повернутий беззастережно [Всі], і в даний час робить.

  • Тепер
  • Явна гіперпосилання відправки регулярних виразів може містити двокрапки. https://github.com/Pylons/pyramid/issues/629
  • Щонайменше, одного 64-бітної системі Ubuntu під Python 3.2, використовуючи view_config декоратор викликало RuntimeError: словник чи змінився розмір під час ітерації винятку. Він більше не робить. См https://github.com/Pylons/pyramid/issues/635 для отримання додаткової інформації.
  • В Mako Шаблони пошуку, перевірте, якщо URI вже налаштований і повернути його до специфікації активів. Зазвичай відбувається з успадкованими шаблонів або компонентів продукту. https://github.com/Pylons/pyramid/issues/606 https://github.com/Pylons/pyramid/issues/607
  • В Mako Шаблони пошуку, перевірки абсолютної URI (за допомогою Мако каталоги) при змішуванні до спадку з специфікації активів. https://github.com/Pylons/pyramid/issues/662
  • HTTP Accept заголовки були нормалізовані в результаті чого потенційно конфліктуючих реєстрацій перегляду залишитися непоміченим. Два погляди, що відрізняються тільки у випадку ("текст / HTML" проти "текст / HTML") тепер викличе помилку. https://github.com/Pylons/pyramid/pull/620
  • Переслати порту від 1,3 галузі: при реєстрації декількох уявлень з прийняти предикат в додатку Піраміда підніжка під Python 3, ви, можливо, отримав Помилка типу: unorderable типів: функція () і л; () Функція виняток.
  • Особливості:
  • Configurator.add_directive тепер приймає довільні викликаються об'єктів, таких як часткові або об'єкти, що реалізують __call__, які не мають __name__ і __doc__ атрибути. См https://github.com/Pylons/pyramid/issues/621 і https://github.com/Pylons/pyramid/pull/647.
  • Сторонні настроюване подання, маршрут і абонентські предикати можуть бути додані для використання зору авторів через pyramid.config.Configurator.add_view_predicate, pyramid.config.Configurator.add_route_predicate і pyramid.config.Configurator.add_subscriber_predicate. Так, наприклад, як це зробити:
  • config.add_view_predicate ('ABC', my.package.ABCPredicate)
  • може дозволити вид автору цього в додатку, конфігурацію, що предикат:
  • view_config (ABC = 1)

  • існує
  • Подібні особливості для add_route і add_subscriber. См & Quot; Додавання третя сторона Фото, маршрут, або абонента предикат & Quot; в главі Гачки для отримання додаткової інформації.
  • Зверніть увагу, що зміни, внесені на підтримку вище особливості означає, що тепер тільки дії реєструються за допомогою тієї ж & Quot; порядок & Quot; можуть вступати в протиріччя один з одним. Раніше справа, що дії зареєстрований на різних порядків потенційно може конфлікт, але, наскільки мені відомо нічого і не залежала від такої поведінки (це було трохи нерозумно).
  • Користувальницькі об'єкти можуть бути легко JSON-серіалізациі в Піраміді, визначивши метод __json__ від класу об'єкта. Цей метод повинен повертати значення спочатку серіалізуемим по json.dumps (наприклад, цілих чисел, списки, словники, рядки, і т.д.).
  • JSON візуалізації тепер дозволяє для визначення користувальницького типу адаптерів для перетворення невідомі об'єкти JSON серіалізациі.
  • Як цього випуску, REQUEST_METHOD предикат, якщо вони використовуються, також випливає, що голова на увазі, коли ви використовуєте GET. Наприклад, з помощьюview_config (REQUEST_METHOD = 'GET') еквівалентно іспользованіюview_config (REQUEST_METHOD = ('GET', 'голова')). Іспользованіеview_config (REQUEST_METHOD = ('GET', 'POST') еквівалентно іспользованіюview_config (REQUEST_METHOD = ('GET', 'голова', 'POST'). Це тому, що голова варіант отримати, що опускає тіло і WebOb має спеціальну підтримку для повернення пусте тіло, коли використовується HEAD.
  • config.add_request_method була введена для підтримки проходять об'єктів запитів з довільними викликаються об'єктів. Цей метод розширює порівняно з попереднім config.set_request_property опорними методів, а також властивостей. Цей метод в даний час викликає менше коду для виконання під час запиту будівельної ніж config.set_request_property у версії 1.3.
  • Не додавати? в URL, породжених request.resource_url якщо аргумент запит надається, але порожній.
  • Не додавати? в URL, породжених request.route_url якщо аргумент _query надається, але порожній.
  • вид статичної машини тепер піднімає (а не декларацій) HTTPNotFound і HTTPMovedPermanently винятками, таким чином, вони можуть бути захоплені виставою NotFound (та інших поглядів виняток).
  • Мако візуалізації тепер підтримує ім'я визначення в якості специфікації активів. Якщо ім'я чіткості присутній в специфікації активів, система візуалізації шаблону Захист усередині шаблону і повертає результат. Специфікація приклад актив пакет: шлях / до / шаблону # defname.mako. Це буде надавати Def імені defname усередині шаблону template.mako замість надання всього шаблону. Старий спосіб повернення кортеж у формі («defname ', {}) з точки зору підтримується для зворотної сумісності,
  • Chameleon ЗПТ візуалізації тепер приймає ім'я макросу в специфікації активів. Коли ім'я макросу присутній в специфікації активів, система надаватиме макрос у списку як визначити, макро- і повернути результат замість надання всього шаблону. Специфікація приклад активів: пакет: шлях / до / шаблону # macroname.pt. Це буде надавати макрос визначається як макросу в шаблоні template.pt замість всієї templae.
  • Коли є предикат невідповідність виняток (видно, коли не вид не відповідає для даного запиту через предикатів не працює), виключення тепер містить текстовий опис предикат, який не відповідає.
  • метод директива add_permission був доданий в конфігуратор. Ця директива реєструє стоїть дозволу інтроспектабельний в систему самоаналізу піраміди. Рамки побудований на вершині піраміди, таким чином, використовувати права доступу інтроспектабельний дані Категорії побудувати повний список дозволів, підтримуваних при працюючій системі. До цього метод був доданий, права вже були зареєстровані в цьому інтроспектабельний категорії, як побічний ефект, назвавши їх при виклику методу add_view, цей метод просто дозволяє організувати дозвіл до введення в дозволах інтроспектабельний категорію, не називаючи його разом з зв'язаному вигляді. Ось приклад використання add_permission:
  • Конфігурація = Configurator ()
  • config.add_permission ('View')
  • UnencryptedCookieSessionFactoryConfig тепер приймає signed_serialize і signed_deserialize гачки, які можуть бути використані для впливу на сеанси вибудував (за замовчуванням це робиться з HMAC + маринад).
  • pyramid.testing.DummyRequest тепер підтримує методи, що надаються класом pyramid.util.InstancePropertyMixin, такі як set_property.
  • властивості прохання і методи, додані через config.set_request_property або config.add_request_method тепер доступні для підлітків.
  • властивості прохання і методи, додані через config.set_request_property або config.add_request_method тепер доступні в об'єкт запиту повернувся з pyramid.paster.bootstrap.
  • request.context запиту навколишнього середовища під час початкового завантаження тепер кореневої об'єкт, якщо контекст не встановлений на передбаченому запитом.
  • pyramid.decorator.reify функція тепер API, і був доданий в документації API.
  • Додано контекстне менеджер pyramid.testing.testConfig, який може бути використаний для генерації конфигуратор в тесті, наприклад, з testing.testConfig (...) :.

  • Тепер
  • Користувачі можуть посилатися на підзапит всередині виду коду з використанням нового request.invoke_subrequest API.
  • Застарілі
  • pyramid.config.Configurator.set_request_property був документація, застарілим. Метод залишається придатним до використання, але більш функціональний pyramid.config.Configurator.add_request_method слід використовувати на своєму місці (він має всі ті ж можливості, але також може продовжити об'єкт запиту з методами).
  • назад Несумісність:

  • не «LI> Піраміда маршрутизатор більше не додає цінності bfg.routes.route або bfg.routes.matchdict на прохання в словнику WSGI навколишнього середовища. Ці значення були документи-застарілі в repoze.bfg 1,0 (фактично сім незначних випусків тому). Якщо ваш код залежить від цих значень, використовуйте request.matched_route і request.matchdict замість цього.
  • Це вже не можливо пройти словник оточать безпосередньо pyramid.traversal.ResourceTreeTraverser .__ call__ (ака ModelGraphTraverser .__ call__). Замість цього, ви повинні передати об'єкт запиту. Передача середу замість запиту викликало попередження старіння, так як піраміди 1.1.
  • Піраміда більше не буде працювати належним чином, якщо ви використовуєте webob.request.LegacyRequest як запит заводі. Примірники LegacyRequest класу мають request.path_info, які повертають рядок. Цей реліз Pyramid припускає, що request.path_info беззастережно бути Unicode.
  • Функції з pyramid.chameleon_zpt і pyramid.chameleon_text імені get_renderer, get_template, render_template і render_template_to_response були видалені. Вони випустили попередження старіння на ввезення, так як піраміди 1.0. Використовуйте pyramid.renderers.get_renderer (), pyramid.renderers.get_renderer (). Реалізацію (), pyramid.renderers.render () або pyramid.renderers.render_to_response відповідно замість цих функцій.
  • модуль pyramid.configuration був видалений. Він був застарілим, починаючи з піраміди 1,0 і надрукували попередження старіння на його використання. Використовуйте замість pyramid.config.
  • pyramid.paster.PyramidTemplate API була вилучена. Він був застарілим, починаючи з піраміди 1,1 і випустив попередження на імпорт. Якщо ваш код залежить від цього, налаштувати ваш код імпортувати pyramid.scaffolds.PyramidTemplate замість цього.
  • В pyramid.settings.get_settings () API був видалений. Він був друку попередження старіння оскільки піраміди 1.0. Якщо ваш код залежить від цього API, використовуйте pyramid.threadlocal.get_current_registry (). Параметри замість або використовувати налаштування атрибут реєстру з наявних із запиту (request.registry.settings).
  • Ці інтерфейси з модуля pyramid.testing були видалені. Вони були друку застарівання попередження, так як піраміди 1,0
  • registerDummySecurityPolicy, використовуйте pyramid.config.Configurator.testing_securitypolicy замість цього.

  • замість
  • registerResources (ака registerModels, використовувати pyramid.config.Configurator.testing_resources.
  • registerEventListener, використовуйте pyramid.config.Configurator.testing_add_subscriber замість цього.
  • registerTemplateRenderer (ака registerDummyRenderer`), використовуйте pyramid.config.Configurator.testing_add_template замість цього.
  • registerView, використовуйте pyramid.config.Configurator.add_view замість цього.
  • registerUtility, використовуйте pyramid.config.Configurator.registry.registerUtility замість цього.
  • registerAdapter, використовуйте pyramid.config.Configurator.registry.registerAdapter замість цього.
  • registerSubscriber, використовуйте pyramid.config.Configurator.add_subscriber замість цього.
  • registerRoute, використовуйте pyramid.config.Configurator.add_route замість цього.
  • registerSettings, використовуйте pyramid.config.Configurator.add_settings замість цього.
  • В Піраміді 1.3 і попередні, метод __call__ об'єкта Response був викликаний, перш ніж які-небудь готові зворотні виклики були страчені. Як цього релізу, метод __call__ об'єкта Response викликається після закінченого зворотні виклики виконуються. Це на підтримку request.invoke_subrequest функції.
  • Документація
  • Додана & Quot; Оновлення Піраміду & Quot; Глава до звичного документації. Він описує, як впоратися з Застарілі та абсорбції піраміди API, і як показати Піраміда генеруються застарівання попередження під час тестування і під час роботи сервера.
  • Додана & Quot; Виклик підзапит & Quot; Глава до документації. Він описує, як використовувати нову request.invoke_subrequest API.
  • Залежності:
  • Піраміда тепер вимагає WebOb 1.2b3 + (до релізу Піраміда тільки спирався на 1.2dev +). Це робиться для того, що ми отримуємо версію WebOb, який повертає request.path_info як текст.

Що нового у версії 1.3.2:

  • Версія 1.3.1 була brownbag реліз, в Принаймні на вікнах і, можливо, в інших операційних системах, у зв'язку з наявністю бродячих і Quot; каталозі пакета (цитата входить в комплект) в кореневій директорії 1.3.1 архіву. Цей каталог і його вміст був присутній, тому що архів був створений за допомогою випуску версії Setuptools-ГИТ, а не Setuptools-ГИТ, встановленого з перевірки. Єдина зміна в цій версії, щоб виправити помилку упаковки в 1.3.1.

Що нового у версії 1.3:

  • Коли pyramid.wsgi.wsgiapp2 називає вниз за течією WSGI додаток, Середа додатки ніколи більше не матиме (застаріла і може ввести в оману) bfg.routes.matchdict або bfg.routes.route ключі в ньому. Ознаками цієї помилки буде wsgiapp2 загорнутий Піраміда додаток визначає неправильне уявлення, тому що помилково виявляє, що обраний маршрут, коли, по суті, не було.
  • Виправлена ​​помилка, при випуску https://github.com/Pylons/pyramid/issues/461 (який зробив можливим для методів примірника буде використовуватися в якості переглянути викликаються об'єктів) ввів зворотну несумісність, коли методи, які оголошені тільки аргумент запиту були використовуваний. См https://github.com/Pylons/pyramid/issues/503

Що нового у версії 1.3 Beta 2:

  • метод pyramid.request.Request.partial_application_url є більше не в документації API. Він повинен був бути приватним методом; його публікація в документації як методу API був помилкою, і вона була перейменована в той приватною.
  • Коли статичний погляд був зареєстрований через абсолютний шлях у файловій системі на вікнах, функція request.static_url не працювати для створення URL-адрес для своїх ресурсів. Симптом: & Quot; без статичного відповідності визначення URL C :. Foobarbaz і Quot;
  • Зробити всі тести проходять на Windows XP.
  • Виправлена ​​помилка в перевірці автентичності ACL перевірки на Python 3: дозволи і principals_allowed_by_permission метод pyramid.authorization.ACLAuthenticationPolicy може повернутися недоречним справжнє значення, коли дозвіл на ACL був рядки, а не послідовність, а потім, тільки якщо дозвіл ACL рядок була подстрока значення дозволу переданого функції.
  • Це помилка дія не піраміда розгортання під Python 2; це помилка, яка існує тільки в розгортанні працює на Python 3. Вона існує, так як Піраміда 1.3a1.
  • Це помилка була через наявність атрибута __iter__ про рядках під Python 3, якої немає під рядків в Python 2.

Що нового у версії 1.3 Beta 1:

  • Виправлена ​​помилка:
  • pyramid.config.Configurator.with_package не працювати, якщо Configurator був старий стиль екземпляр pyramid.configuration.Configurator.
  • Політики авторизації Піраміда не з'являвся в Introspector.
  • Застарілі
  • Всі номери змінну запиту tmpl_context були видалені з документації. Його існування в піраміди в оману людей, які ніколи не були пілони користувачів. Він був доданий в портуванні зручності для користувачів пілони в Піраміді 1.0, але він ніколи не зловили на, бо система надання Піраміда сильно відрізняється від Пілони 'було, і альтернативні способи існують, щоб робити те, що він був розроблений, щоб запропонувати в пілонах. Він буде продовжувати існувати і Quot; вічно і Quot; але це не буде рекомендований або згадані в документації.

Вимоги

  • Python

Інші програми розробника Chris McDonough

pyramid_viewgroup
pyramid_viewgroup

15 Apr 15

pyramid_exclog
pyramid_exclog

14 Apr 15

Supervisor
Supervisor

20 Feb 15

pyramid

Коментар не знайдено
додати коментар
Включіть картинки!