Chystané vydání verze 2.0.11
- David Grudl
- Nette Core | 8227
Rád bych vydal verzi 2.0.11, která obsahuje řadu fixů v Nette\Database,
opravuje #700, #1026, #634, #900, #1057, přidává
dopřednou kompatibilitu pro |noescape
v Latte a třídu
Nette\Configurator
a v Sandboxu je Adminer přístupný jen
z localhostu. Pokud se neobjeví nějaký bezpečnostní problém, zřejmě by
šlo o poslední verzi v řadě 2.0.x.
Update by pochopitelně neměl způsobit žádné komplikace. Pokud byste narazili na nějakou chybu nebo pokud víte o issue, které by mělo být do této verze zařazeno, dejte vědět.
- Nette Framework 2.0.11 RC pro PHP 5.3 | pro PHP 5.2 | PHP 5.2 bez prefixů
- changelog
- enumag
- Člen | 2118
Včera jsem něco dělal s 2.0.10 a všiml jsem si že rozkliknuté panely z debugBaru nepřekrývají laděnku. V masteru je to dávno opravené, tuším že to fixoval tento commit.
- Majkl578
- Moderator | 1364
Letmo jsem to prošel a zaujaly mě následující:
- Database: SqlPreprocessor throws exception when parameter is missing. (= BC break?)
- DI\ContainerBuilder: factory method must exists (potenciálně BC break?)
Jinak jsem zkusil na pár projektech a zdá se být OK.
Editoval Majkl578 (17. 6. 2013 19:47)
- saimons
- Člen | 293
@martinit: S tim bych nesouhlasil, ze ma byt primarni klic vsude. Nechci se tu poustet do podrobnych popisu, protoze DB model navrchoval jiny clen tymu, ale v mem pripade ja umisteni PK navrhove spatne. Jedna se o tabulku s obrovskym objemem dat v rozsahu BIGINT a INDEX je nastaven na jiny atribut, pro ktery je potreba. Primarni klic se nevyuzije. Pokud si MySQL nekde stejne dela INDEX na skryty PK, tak to uz je vec MySQL (mozna docasna), ale v jinych DB se to da efektivne vyuzit.
- saimons
- Člen | 293
@enumag: Atribut na kterem je INDEX neni unikanti a je tam proto, ze pouze pres tento atribut se dela vyber mnoziny. Vzajemna kombinace sloucu by sla pouzit, ale tzn., ze by na ne musel byt INDEX a to by zpomalilo zapis, protoze by se musel prepocitavat pro vsechny sloupce a pri vyberu by to v rychlosti nepomohlo, protoze se pres ne vyber nedela.
- paranoiq
- Člen | 392
@saimons skrytý PK není dočasná záležitost a není to specialita MySQL. každá běžná databáze potřebuje jednoznačně identifikovat záznam. ad „Primarni klic se nevyuzije“ – PK je to co říká enginu, kde konkrétně jsou uložena data. v sekundárních indexech jsou pouze odkazy na PK
RTFM http://dev.mysql.com/…d-index.html 14.2.3.12.2
ale samozřejmě BCbreaky v setinkové verzi jsou EE
- saimons
- Člen | 293
@paranoiq: No ale napr. v Teradate a v Oraclu to tak neni. Tam tuto funkci zastupuje row number na kterem nemas/nemusis mit INDEX. A pak je muj datovy model spravny. Ale stejne jak rikate, tak pokud budu mit jak kombinaci unikatnich atributu, nebo PK, tak stejne se zeslozituje pri kazdem insertu doba na jejich prepocteni. To jestli to MySQL stejne dela jako kdyby tam ten PK byl (ikdyz neni videt), to nevim.
- hrach
- Člen | 1838
Dnes jsem udelal upgrade z verze 2.0.10 na release-2.0.x z Githubu a je tam BC break. Na tabulkach bez PK jsem pri insertu pres Nette\Database\Table dsotal chybu: Table … does not have any primary key.
Abych to celé uzavřel: tabulky, co nemají PK není důvod využívat Nette\Database\Table, protože to bez PK nefunguje.
- MartinitCZ
- Člen | 580
Přesně to, co napsal hrach jsem myslel. :)
@**enumag**: Sám víš, že jsem měl úplně stejný problém. Jen asi o dvě-tři setinkové verze zpět a řešili jsme to spolu dokonce přes email.
- David Grudl
- Nette Core | 8227
Hrachu, zkus prosím mrknout, které commity přidat nebo zrušit v 2.0.11 RC.
- Milo
- Nette Core | 1283
Dělá to tento
commit. getPrimary()
vyhazuje vyjímku.
Testováno na 2.0.10 a 2.0.11RC:
# CREATE TABLE nopk (name TEXT);
$db = $this->context->getService('database');
$db->table('nopk')->insert(array('name' => 'test'));
EDIT: Pokud se vyjímka zakomentuje, insert se provede.
EDIT2: A probublá to tam přes
insert() > getPrimarySequence() > getPrimary()
Editoval Milo (28. 6. 2013 7:55)
- David Grudl
- Nette Core | 8227
Dal jsem na web 2.0.11 RC2 a prosím o otestování v reálném provozu. Díky!
- Nette Framework 2.0.11 RC2 pro PHP 5.3 | pro PHP 5.2 | PHP 5.2 bez prefixů
- Jan Tvrdík
- Nette guru | 2595
@David Grudl: Při zkoušení 2.0.11 RC2 jsem narazil na https://github.com/…te/pull/1162. Chyba je tam zřejmě odjakživa, byl bych rád, kdyby se oprava dostala do 2.0.11. Můžeš přihodit i ostatní opravy, ale ty nepotřebuji.
- Jan Jakeš
- Člen | 177
Btw. zaregistrovali jste nové releases na Githubu? https://github.com/…our-software
- Filip Procházka
- Moderator | 4668
<ot> David to tam nasázel hned první den co to vyšlo, vypadá to super! :) </ot>
Editoval Filip Procházka (9. 7. 2013 14:49)