Storm (mjukvara)

Storm
Utvecklare Canonical Ltd.
Stabil frisättning
0,25 / 18 april 2021 ; 22 månader sedan ( 2021-04-18 )
Skrivet i Pytonorm
Operativ system Cross-plattform
Typ Objektrelationell kartläggning
Licens LGPL 2.1
Hemsida storm .canonical .com Edit this at Wikidata

Storm är ett Python- programmeringsbibliotek för objektrelationell mappning mellan en eller flera SQL- databaser och Python-objekt. Det tillåter Python-utvecklare att formulera komplexa frågor som spänner över flera databastabeller för att stödja dynamisk lagring och hämtning av objektinformation.

MySQL , PostgreSQL och SQLite databasstöd är inbyggt i Storm, och API:et tillåter stöd för andra. Storm stöder också webbramarna Django och Zope inbyggt. Twisted support planeras för .20-versionen.

Utveckling

Storm utvecklades på Canonical Ltd. i Python för användning i Launchpad- och Landscape -applikationerna och släpptes sedan 2007 som fri programvara. Projektet är fri programvara och släppt under GNU Lesser General Public License och bidragsgivare måste tilldela upphovsrätt till Canonical. Versionskontroll görs i bazaar och problemspårning i Launchpad.

Version Utgivningsdatum Förbättringar
Storm 0,21 TBD Under utveckling från 2013
Storm 0,20 28 juni 2013
  • En ny CaptureTracer har lagts till i storm.testing.
  • Setuptools krävs nu för att köra setup.py. Detta gör det lättare att installera beroenden som krävs för att köra testsviten.
  • PostgreSQL-frånkopplingsfel upptäcks nu mer tillförlitligt.
  • Insert-uttryck stöder nu INSERT-satser med flera rader och underfråga.
  • Stöd i postgres backend för att använda RETURNING-tillägget för UPDATE, valfritt ange kolumner som ska returneras.
  • Lägg till ett distinkt uttryck för att förbereda 'DISTINCT' till SQL-uttryck.
  • Växla till REPETERBAR LÄS som isoleringsnivå för Postgres.
  • Lägg till stöd för två-fas commits (endast PostgreSQL).
  • ZStormResourceManager har nu ett schema_stamp_dir valfritt instansattribut, så schemauppgraderingar kommer endast att utföras när det behövs.
Storm 0.19 5 oktober 2011
  • Storm.zope.testing.ZStormResourceManager stöder användning av en anpassad URI.
  • ResultSet.configs "distinkt" argument accepterar en tupel av kolumner.
  • Tillhandahåll inslagna markörobjekt i Django integrationslager.
  • Lägg till en ny JSON-egenskap, ny ROW-konstruktor, nya Cast-uttryck och två nya spårare.
  • Ny storm.twisted.transact-modul har lagts till.
Storm 0.18 25 oktober 2010
  • Inkludera kod för att hantera och migrera databasscheman.
  • Lade till en storm.zope.testing.ZStormResourceManager-klass för att hantera en uppsättning registrerade butiker.
  • När ett TimeoutError uppstår innehåller det en beskrivning om varför undantaget togs upp.
  • Förbättrade IResultSet-gränssnittet för att dokumentera skälen till varför vissa attribut inte ingår.
Storm 0.17 5 augusti 2010
  • ResultSet och ReferenceSet är omarbetade och förbättrade.
  • Klasserna Store och Connection har metoderna block_access() och unblock_access().
  • ZStormError kommer att uppstå vid försök att använda ett lager per tråd från fel tråd.
Storm 0.16 29 november 2009
  • Uppsättningsuttryckskonstruktorn kommer nu att platta till sitt första argument om det är av samma typ.
  • Lägg till metoderna startswith(), endswith() och contains_string() till Comparable.
  • C-tillägg är aktiverade som standard.
  • 'make doc' använder Pydoctor för att generera API-dokumentation.
Storm 0.15 8 augusti 2009
  • Lägg till stöd för senaste versionen på Django genom att inte kontrollera argument som skickas till _cursor.
  • Ny GenerationalCache, UUID-egenskapstyp, Neg-uttryck och Coalese-uttryck lades till.
  • Förbättrad DisconnectionError-rapportering.
  • Resultat/Resultatuppsättningar exponerar nu mer.
Storm 0.14 9 januari 2009
  • Ett nytt storm.django-paket har lagts till.
  • Butikskonstruktorn tar ett valfritt cache-nyckelordsargument,
  • ResultSets erbjuder nu en is_empty()-metod.
Storm 0.13 28 augusti 2008
  • Lägg till group_by/having-metoder på ResultSet-objekt.
  • Ändra tester/lagra för att behålla anslutningen under testerna.
  • Implementerat stöd för att plugga in generiska "spårämnen".
  • Egenskaper accepterar nu en "validator"-parameter.
  • Uttryck kan skickas till Store.find() såväl som klasser.
  • Föremål spolas i den ordning de blir smutsiga.
  • ClassAlias ​​cachar alla explicit namngivna alias.
  • Resultatuppsättningar och referensuppsättningar har nu en __contains__()-metod.
Storm 0.12 28 januari 2008
  • Anslutningen kommer att återansluta automatiskt när droppar upptäcks.
  • Store.flush() kommer inte att ladda värden som infogats i databasen
  • Stöd i postgres backend för att använda RETURNING-tillägget.
  • Introducerade en cache-mekanism som håller de N senast hämtade objekten i minnet.
  • Förbättrat stöd för TimeDelta-egenskaper på alla backends.
Storm 0.11 8 oktober 2007 Mindre buggfixar release.
Storm 0,10 8 augusti 2007 Bugfixar, funktionsförbättringar, dokumentation!
Storm 0,9 6 juli 2007

Se även

externa länkar