
Eugene
19.04.2017
12:19:43
Но вообще в непростое время живём, по-осторожнее :))
Минюст признал экстремистской фотожабу с Путиным в макияже, намекающую на «якобы нестандартную ориентацию»

Dmitry
19.04.2017
12:22:29
омг. ещё заблочат гитхаб
ну или проект https://github.com/junyanz/CycleGAN#failure-cases
а кто-нибудь пробовал какие-нибудь синтерезаторы речи для русского языка?

GNU/Docker
19.04.2017
13:42:59
=)

Google

Dmitrii
19.04.2017
13:43:42
Лол

Dmitry
19.04.2017
13:45:00
=)
о, вот это ты какой использовал?

GNU/Docker
19.04.2017
13:45:12
Это бот
@ saytextbot
он что-то там использует я не знаю

Denis
19.04.2017
13:49:35
Какой-то прикручивал к астериску, вроде фестиваль, но там лиспцы. Синтезировал нормально, больше чем я ожилал

Alex
19.04.2017
15:13:22
Ребят, а кто-нибудь Odoo тут занимается?

Denis
19.04.2017
15:14:09

Alex
19.04.2017
15:14:45
Хотелось бы что то на Питоне)

Denis
19.04.2017
15:16:08
Ну я не помогу, но просто скажу что на практике было несколько раз так, что заказчику на самом деле ERP не нужна, а только пара фич оттуда :D
Но пусть более опытные коллеги подскажут по поводу ERP )

Chikiro
19.04.2017
15:17:50
В OpenERP был какой-то хардкод sql-запросов, все что помню. Интересно, сделали орм или так и живут.

Denis
19.04.2017
15:18:33

Google

Alex
19.04.2017
15:24:21
Вроде в 10 версии сделали

Jonh
19.04.2017
15:24:35
Хотя там есть настоящий on delete cascade, в отличии от джанги

Alex
19.04.2017
15:29:24
Стоит вообще с ней связываться?

Jonh
19.04.2017
15:33:25

Alex
19.04.2017
15:34:08
CRM+бухгалтерия+атс

Jonh
19.04.2017
15:49:52
CRM+бухгалтерия+атс
АТС - задача какого-нибудь asterisk, с ним есть интеграция. По бухгалтерии не скажу, но в российских реалиях и как основной инструмент - сомнительно

Denis
19.04.2017
15:50:28
Если бизнес мелкий, то большие затраты будут при интеграции того же астериста, интеграции кривой ERP, допиливания хитрых отчётов что никому не нужны и ломают всю систему... Я так одному знакомому помогал с тем, что ему нагородили. А ему из всего этого реально нужна была простая CRM для ведения лидов да телефония "с компьютера".

Roman
19.04.2017
16:46:34
простите... нейронки меня впечатлили
))

Aleksander
19.04.2017
16:54:05
ты просто играешься или уже свои сделал ?)

Roman
19.04.2017
16:54:21

Alex
19.04.2017
16:54:47

Denis
19.04.2017
17:08:10

Valery
19.04.2017
19:44:13
Привет. Есть кто живой?
Хочу странного — приблуду для миграций на голом SQL ?
https://flywaydb.org/
Типа такого, но на Python)

Google

Denis
19.04.2017
19:47:44
https://flywaydb.org/
Типа такого, но на Python)
Могу посоветовать разве что погуглить, глянуть какой список типа awesome Python. Но у питона не такое коммьюнити, что будет иметь альтернативный инструмент в хорошем состоянии. Вообще пишется такая приблуда просто, я для Go такую написал за пару часов. Или тебе хочется и автоматически определять изменения?

Valery
19.04.2017
19:48:47
Не, изменения я могу и руками сообразить, а вот служебную табличку со списком применённых миграций самому городить не охота.

Denis
19.04.2017
19:49:29
Нууу, её обычно везде имеют ) я вот тоже не парился, тоже сделал

Valery
19.04.2017
19:49:30
А гугл ничего особо не показывает ? Есть pqmigrate, но он от 13-го года

Denis
19.04.2017
19:49:54

Valery
19.04.2017
19:50:07
???

Denis
19.04.2017
19:50:33
А ты хочешь автоматическое определение состояния по миграциям? В SailsJS было подобное, но там миграций то не было считай

Valery
19.04.2017
19:50:50
Если мерить выдержкой. надо срочно переходить на фортран))
Не, я хочу иметь метод, который будет в одно касание проверять актуальность схемы и приводить её к нужному виду, если она не актуальна.

Denis
19.04.2017
19:51:30

Valery
19.04.2017
19:52:19
Эм. А зачем?

Valery
19.04.2017
19:53:12
Миграции нужны при выкатке новых версий, то есть на базу с существующими данными. Если разворачивать на новой машине приложение с данными, то данные можно уже после миграций залить из бэкапа.

Denis
19.04.2017
19:53:15
Ну смотри, у тебя был array field, а потом стала отдельная таблица. Как ты автоматически обновишь? Альтеры сделаешь, но данные потеряешь.

Valery
19.04.2017
19:53:35
Оу
Ну, я надеюсь, что не доживу до состояния, когда этот проект потребует array field)))

Denis
19.04.2017
19:54:07
Или например у тебя есть в поле инты, а нужно взять и их сдвинуть или наоборот разделить таблицу на две
Потому мне такая схема миграций кажется несколько неприменимой в реалиях, отличных от стартапа
Как говорил, SailsJS меня когда-то приятно удивил такой фичей, а потом разочаровал, когда я понял что все плохо ))

Google

Denis
19.04.2017
19:57:48
А если у тебя мускуль, то не все типы полей при альтере сохраняют очевидное значение. Вот сделаешь филд строкой, а нужен был числом с плавающей точкой, потеряешь данные, и всё :( ну с этими типами то всё ок, но не факт что так всегда будет везти :)
А постгре даже эксплицитно попросит способ для конвертации, если не изменяет память

Valery
19.04.2017
19:59:14
База постгрес и я очень надеюсь, что все миграции будут обходиться простым добавлением новых полей)

Jonh
19.04.2017
19:59:17

Valery
19.04.2017
19:59:30
Ладно, спасибо за умные мысли, пойду думать

Denis
19.04.2017
20:00:26
Я давно мускуль то не трогал

Jonh
19.04.2017
20:01:12

Admin
ERROR: S client not available

Jonh
19.04.2017
20:02:06

Valery
19.04.2017
20:03:43
О, это тот самый прославленный Женя Дюков?))

Denis
19.04.2017
20:03:56

Jonh
19.04.2017
20:05:15

Denis
19.04.2017
20:25:24

Valery
19.04.2017
21:01:05
Может быть, всё таки никак?))
Ну, или писать анти-миграции, чтобы их можно было откатить, если результат не понравится.

Denis
19.04.2017
21:01:31
Вот я то и сам думаю

Andrey
19.04.2017
23:29:13

Google

Valery
19.04.2017
23:30:03
Алембик — он на пайтоне. Вкорячить туда сырой SQL можно, но это всё же будет набор питоноскриптов, а не набор SQL файлов
Ну и, как я понял, вместе с ним придётся тянуть довольно громоздкую структуру из папочек и вспомогательных файлов

Andrey
19.04.2017
23:32:00
ну, ты можешь сделать чтобы каждая питономиграция просто дергала твои sql файлики, и генерить их кодом в таком случае.
в чем вообще смысл голого сиквела?

Valery
19.04.2017
23:33:00
То есть, поверх каждого SQL файлика ещё питонофайлик?
Очень простая схема, которая вряд ли будет расширяться сложнее, чем добавление новых полей. Не охота тащить что-то тяжёлое.

Andrey
19.04.2017
23:33:56

Valery
19.04.2017
23:34:12
Конечно, возможно, что горожу огород на пустом месте, но не хочу использовать ORM, хочу воплотить DAO)
В качестве айдишников миграций можно использовать префикс в имени файла миграции))

Andrey
19.04.2017
23:34:49
это не орм, это именно система миграций. вот джангу ради миграций тащить было бы явно лишнее

Valery
19.04.2017
23:36:55
Flyway делает это как раз по префиксам имён файлов. Как я понял, в одной транзакции делается изменение схемы и правка таблицы со списком применённых миграций. Если что-то пошло не так, транзакция откатывается.
То есть, если миграция не прошла, то в таблице миграций её просто не будет.
Ну, или будет в статусе FAILED, если БД не умеет в транзакционный DDL.

Andrey
19.04.2017
23:39:36
в алембике похоже

Valery
19.04.2017
23:40:19
Ага, но последовательность транзакций прописывается в питонофайле, так?

Andrey
19.04.2017
23:40:32
просто тебе все равно нужна какая-то обвязка, чтобы дергать файлики с операциями
там каждая миграция это отдельный файл. строго говоря ты вообще не обязан только sql в миграции использовать. у меня например была миграция, которая выгружала данные из мускуля и писала их в мапредьюс

Valery
19.04.2017
23:44:45
Да, мне тут уже рассказывали про ужасы правки данных в процессе миграции. Вероятность такого развития событий крайне мала, но, в принципе, если припрёт, мапредьюс, кажется, можно сделать и на SQL, создать новую таблицу которая будет результатом запроса к старой, грохнуть старую, переименовать новую.

Andrey
19.04.2017
23:45:25
так и чем это плохо? весь бойлерплейт с подключением и транзакциями можно вынести в отдельный модуль и только файлы менять