The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Новая версия BitTorrent-клиента Transmission 3.0, opennews (??), 23-Май-20, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


145. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от пох. (?), 24-Май-20, 01:15 
чего-то как-то причудливо они его исправили:

static void nodeDestruct(struct SaveNode* node)
{
-    if (node->v == &node->sorted)
+    TR_ASSERT(node != NULL);
+
+    if (node->sorted != NULL)
    {
-        tr_free(node->sorted.val.l.vals);
+        tr_free(node->sorted->val.l.vals);
+        tr_free(node->sorted);
    }
}

При том что вся увизгвимость как раз крутилась вокруг факта, что node таки иногда оказывалось wild pointer где не ждали.

Угадайте, что у нас такое TR_ASSERT?
А вот чего:
#define TR_ASSERT(x) ((void)0)


P.S. а что, с шитхаба теперь банально скопировать патч нельзя, кнопка raw куда-то исчезла?

Ответить | Правка | Наверх | Cообщить модератору

186. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от Аноним (-), 24-Май-20, 10:59 
> При том что вся увизгвимость как раз крутилась вокруг факта, что node
> таки иногда оказывалось wild pointer где не ждали.

Если кто на бронепоезде, assert дебажная фича, ловящая programming error - оно выносит процесс с аварийным завершением. Это не является штатным состоянием дел, последний писк для разработчика "ты лох и наломал дров!". Юзеру пищать бесполезно, он выругается и перезапустит.

> wild pointer где не ждали.

Так это и есть баг - сам факт что он wild, в комите описано как это получается. Предлагается законопатить и сделать вид что wild-а не было? :) Там фикс кроме всего прочего меняет еще и работу c этим, tr_new() добавили. После чего оно уже не "free", так что use after free там уже быть не должно.

> Угадайте, что у нас такое TR_ASSERT?

В дебажном варианте там нормальный ассерт. Но это имеет смысл для разработчиков способных на такое внятно реагировать. Чего юзер с явным programming error должен сделать?

> P.S. а что, с шитхаба теперь банально скопировать патч нельзя, кнопка raw
> куда-то исчезла?

Без понятия, в git log работает.

Ответить | Правка | Наверх | Cообщить модератору

196. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от пох. (?), 24-Май-20, 12:20 
> Если кто на бронепоезде, assert дебажная фича, ловящая programming error - оно выносит
> процесс с аварийным завершением.

И?

> Это не является штатным состоянием дел

null вместо указателя, безусловно, им не является, но в хорошем коде как-то, обычно, принято эти null проверять - и если ничего разумного в этом случае сделать нельзя - таки падать с аварийным завершением.

> Там фикс кроме всего прочего меняет еще и работу c этим, tr_new() добавили.

ну да, ну да - то есть там теперь не указатель в уже освобожденную память, а null будет. А вот везде ли при этом НЕ вызывается второй раз destruct - судя по наличию таки assert, писатель кода немного усомнился, но не настолько, чтобы проверять каждый раз.

> В дебажном варианте там нормальный ассерт.

только ты его так не соберешь - оно вручную по-моему, вообще не включается, этот NDEBUG там намертво прибит - чтобы его выключить, надо собрать нерелизную версию из гита.

> Чего юзер с явным programming error должен сделать?

бегать и орать "ваше г-но ПАДАЕТ при подсовывании ему вот такого торрента!" - что явно лучше, чем если оно не падает, а тихо глючит когда-нибудь сильно потом, или падает без диагностики и неясно где. А при большой удаче - еще что-нибудь там майнит.

> Без понятия, в git log работает.

мне неинтересно делать clone того, чем я не собираюсь пользоваться, только ради удовольствия посмотреть лог - а с remote repo напрямую ваша brain damaged поделка работать не умеет. Особенно когда я уже в интуитивно-приятном интерфейсе нашел нужный патч, и требуется только скопировать его - хотя бы мышью из браузера - но даже это теперь невозможно. При этом его стало можно (если есть права, конечно) прямо в этом приятном интерфейсе поредактировать, прямо с любимого ипхона.
А вытащить собственно патч, без интерфейса - теперь, похоже, нельзя. Кнопка raw осталась только для файлов.

Пользователям пихонов, наверное, и не нужно.

Ответить | Правка | Наверх | Cообщить модератору

239. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от Аноним (-), 25-Май-20, 07:03 
> И?

Смысл глушить юзерей ассертом весьма умеренный. Assert не является "крейсерской" проверкой штатных ситуаций.

> null вместо указателя, безусловно, им не является, но в хорошем коде как-то,
> обычно, принято эти null проверять - и если ничего разумного в
> этом случае сделать нельзя - таки падать с аварийным завершением.

Это вообще на вид какая-то дебажная проверка чтобы проверить что та логика и правда работает как задумано. И если ремота может целенаправленно стриггерить assert вышибающий процесс, это по логике всяко CVE "remote ... DoS attack".

> ну да, ну да - то есть там теперь не указатель в уже освобожденную память, а null будет.

Шарахание по левой памяти (вылет процесса = DoS attack) не произойдет. Сейчас там, кстати, другой код уже. Чекаутить все целиком для прозвона насколько та логика была валидна целиком мне все же впадлу, сорь.

> А вот везде ли при этом НЕ вызывается второй раз destruct - судя по наличию таки
> assert, писатель кода немного усомнился, но не настолько, чтобы проверять каждый раз.

Видимо поэтому и assert. Сейчас там другой код в этом месте. Он чекает все на что tr_free делает.

> собрать нерелизную версию из гита.

Ну так если тебе ассерты интересны, подразумевается что ты все это можешь. Или чего ты будешь с ассертом выбивающим процесс делать? Особенно если он ремотно вызывается? Поработаешь тренировочной грушей для любителей DoS-attack? :D

> бегать и орать "ваше г-но ПАДАЕТ при подсовывании ему вот такого торрента!"

В лучшем случае. В хучшем - хаотично вопить что падает при непонятных обстоятельствах. Торент не обязан быть здесь и сейчас, например. Как тебе ассерт через месяц работы? Когда юзер его текст не видит?

> А при большой удаче - еще что-нибудь там майнит.

Чего-то не понимаю как через вон ту CVE майнить. Самое очевидное что там можно было - вынести процесс если это удается спровоцировать. Это тоже полезно, копирасы с удовольствием доплатят мутным парням чтобы притормозить те раздачи и вызвать фрустрацию у халявщиков, прибавив покупателей.

> мне неинтересно делать clone того, чем я не собираюсь пользоваться, только ради
> удовольствия посмотреть лог -

Ну, блин, на мой вкус телепать git log через гитхаб как-то очень так себе идея.

> а с remote repo напрямую ваша brain damaged поделка работать не умеет.

В их SVN для того чтобы посмотреть что-то такое вообще пришлось бы качать половину проекта заново :D. А когда надоест - другую половину взад. Так чот то что они перешли на гит все же фича. Для тех кто хочет активно покопаться в сорце. И наверное это все же не через клипборд и гитхаб. Ну и наверное все же юзать. Телепаться по версиям сорцов которые юзать не планируется какое-то нишевое развлечение, имхо. Я бы не стал сильно париться о таком юзкейсе, он эфемерный. А так мир вообще не идеален.

> Особенно когда я уже в интуитивно-приятном интерфейсе нашел нужный патч,
> и требуется только скопировать его - хотя бы мышью из браузера - но даже это теперь невозможно.

Сейчас все что касается того гуя - это майкрософт. Добро пожаловать в филиал спортлото :D

> приятном интерфейсе поредактировать, прямо с любимого ипхона.

Что-то у меня есть определенные сомнения в чрезмерной эффективности этого подхода.

> А вытащить собственно патч, без интерфейса - теперь, похоже, нельзя. Кнопка raw
> осталась только для файлов.

Майкрософт Корпорация всегда думает о том как вас лучше сделать! :P

> Пользователям пихонов, наверное, и не нужно.

А черт их там знает. Ковырять код на ипхоне им тоже наверное не нужно - он все равно на ипхоне не запустится.

Ответить | Правка | Наверх | Cообщить модератору

269. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от пох. (?), 25-Май-20, 16:25 
> Смысл глушить юзерей ассертом весьма умеренный. Assert не является "крейсерской" проверкой
> штатных ситуаций.

именно по этой причине я бы там влепил обычный if NULL => abort(), а не отключаемый флагами сборки assert.

Не должно быть в этом месте NULL. Если откуда-то взялся - лучше завершиться аварийно, предоставив юзеру разбираться, что он туда такое скормил или на кого напоролся.

> И если ремота может целенаправленно стриггерить assert вышибающий процесс, это по логике
> всяко CVE "remote ... DoS attack".

да. Но это гораздо лучше обращения к NULL, или вообще освобожденной памяти - а мы именно такое только что исправили.

> В лучшем случае. В хучшем - хаотично вопить что падает при непонятных обстоятельствах.

всяко лучше, чем хаотично вопить что его поломали, вроде через торренты, но обстоятельства ему непонятны, не?

> В их SVN для того чтобы посмотреть что-то такое вообще пришлось бы качать половину проекта
> заново

нет. svn умеет напрямую работать c remote, вообще ничего не скачивая. Включая и diff между двумя разными состояниями того remote.

> Так чот то что они перешли на гит все же фича. Для тех кто хочет активно покопаться в сорце.

если очень уж активно - то может. А вот побыстрому глянуть что именно тут опять-починили - увы. Вместо пары команд в cli - лезем на веб-морду разбираться, все как смузихлебы любят.

> Что-то у меня есть определенные сомнения в чрезмерной эффективности этого подхода.

все побежали (в смысле, gitlab там первый был), и microsoft побежал. Ну представь, едешь ты в троллейбусе, пытаясь вовремя протолкаться к выходу перед своей остановкой, и тут же редактируешь код одним пальчиком - круто же, да?!
А компьютер тебе вообще не нужен. Потому что вряд ли ты захочешь сам пользоваться тем, что вот так понаулучшал ;-)

А вот кнопку "скачать raw-diff" по результатам телеметрии выпилили - хотя, как вон там аноним подсказывает, не выпилили хотя бы саму возможность, и на этом спасибо. Не нашли, наверное, с ипхона-то.
raw.github-то не выпилят, на нем половина интернета работает, а вот патчи - могли.

Ответить | Правка | Наверх | Cообщить модератору

291. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от Аноним (-), 26-Май-20, 11:31 
> именно по этой причине я бы там влепил обычный if NULL =>
> abort(), а не отключаемый флагами сборки assert.

А у тебя есть пара чуваков которые после этого будут забесплатно сортировать непонятные баги оптом и хорошо знают внутренности программы, чтобы понять что вобще за нах?

> завершиться аварийно, предоставив юзеру разбираться, что он туда такое скормил или
> на кого напоролся.

Юзер придет и напишет баг "программа упала через месяц работы". Разгребать такие баги довольно тяжко, поскольку рассказать случайным прохожим как диагностику собрать не так то просто, да и не факт что ситуация повторится. Если просто повторяется, как раз ассерт еще у дева и отловит сие.

> да. Но это гораздо лучше обращения к NULL,

Чем? Обращение к NULL ведет к немедленному SIGSEGV. Я проверил:


+ READ <- 0,  should CRASH
Program received signal SIGSEGV, Segmentation fault.
...
+ WRITE -> 0, should CRASH
Program received signal SIGSEGV, Segmentation fault.
...
test[12795]: segfault at 0 ... error 6 in test[...+1000]

Чем хуже? Причина вылета? На результат не влияет. Чего еще хакер может извлечь если процесс немедленно вылетает за факт этого поползновения я не понимаю.

> или вообще освобожденной памяти

Если мы сходим по NULL то процесс просто умрет. Это вроде максимум чего можно достичь? Копирасов в принципе и это устроит для порчи настроения народу на горячем варезе, но не более того.

> - а мы именно такое только что исправили.

А меня вообще Cortex M обломал: я попробовал (с легитимной целью!) читануть адрес 0 (там начальный адрес стэка, читается железом при powerup). А мне за это "железно" HardFault-ом по башке. Походу фирма ARM конкретно не любит null pointer'ы, аж вхардкодила в ядро проца, настолько что даже без MMU/MPU дает в репу в виде который невозможно игнорировать.

> всяко лучше, чем хаотично вопить что его поломали, вроде через торренты, но
> обстоятельства ему непонятны, не?

Не очень понимаю как кого-то поломать через обращение к NULL кроме DoS-атаки вида "клиент вылетел".

> нет. svn умеет напрямую работать c remote, вообще ничего не скачивая. Включая
> и diff между двумя разными состояниями того remote.

Походу ты очень любишь собирать кораблики в бутылках. Если ты вдруг это еще не пробовал, обязательно попробуй, потом будешь всем доказывать что это самый простой и удобный способ постройки моделек кораблей :D.

> если очень уж активно - то может. А вот побыстрому глянуть что
> именно тут опять-починили - увы.

Ну мне как-то git checkout быстрее - и совершенно не зависит от причуд сервера и вообще есть ли у меня в этот момент интернет, или я просто разлимонился на какой-нибудь лужайке с лаптопом.

> Вместо пары команд в cli - лезем на веб-морду разбираться, все как смузихлебы любят.

Ну это только казуалы, которые один черт не собираются этим пользоваться, так что не вижу проблемы.

> все побежали (в смысле, gitlab там первый был), и microsoft побежал.

Собственно как фича до кучи - почему нет? Просто вопрос в том много ли ты таким макаром напрограмишь, особенно с мобилки какой. Но пару typo попавшихся здесь и сейчас наверное вполне ок так замахать.

> Ну представь, едешь ты в троллейбусе, пытаясь вовремя протолкаться к выходу перед
> своей остановкой, и тут же редактируешь код одним пальчиком - круто же, да?!

Ога, так можно просто завалить кодом планету. А когда весь троллейбус делит 1 соту на всю толпу, навигация по проекту будет просто офигеть. Не то что git checkout какой.

> А компьютер тебе вообще не нужен. Потому что вряд ли ты захочешь
> сам пользоваться тем, что вот так понаулучшал ;-)

Ну что, в принципе логично. Да и хрен с компьютерами, главное чтобы какой-нибудь инвестлох купил кульный прожект.

> А вот кнопку "скачать raw-diff" по результатам телеметрии выпилили

Я не очень понимаю нафига эта кнопка так по жизни, в том плане что кажется никогда ей не пользовался. Но и вреда от нее особо не было вроде.

>- хотя, как вон там аноним подсказывает, не выпилили хотя бы саму возможность, и
> на этом спасибо. Не нашли, наверное, с ипхона-то.

Просто фронт и бэк делают разные тела и первые не сказали вторым :). А теперь гадай когда до вторых дойдет что фича deprecated.

> raw.github-то не выпилят, на нем половина интернета работает, а вот патчи - могли.

Целиком то не выпилят, а вот побустать фичи или переколбасить все - блин, гугол целую пикасу и гуглоплюс выпилил, IIRC, и ничего, живой. Думаешь MS настолько сыкливый?

Ответить | Правка | Наверх | Cообщить модератору

324. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от пох. (?), 26-Май-20, 22:21 
> А у тебя есть пара чуваков которые после этого будут забесплатно сортировать
> непонятные баги оптом и хорошо знают внутренности программы, чтобы понять что

ну конечно же проще гадать на sigsegv'ах или ждать CVE от посторонних, чем прочитать сообщение выдаваемое перед abort()?

> Чем? Обращение к NULL ведет к немедленному SIGSEGV. Я проверил:

это у нас нынче заshitа такая, косплей твоего арма.

Надо обращаться не к null, а к NULL->someoffset.somemoreoffset - правда, наверное, нужно для этого переехать через 4k, что уже не так просто.

> мне за это "железно" HardFault-ом по башке. Походу фирма ARM конкретно

ну этот sigsegv тоже примерно так устроен - там, afair, страница мапится куда-то в шибкоспециальное место, которое нельзя ни read, ни write, как и обычные stack gard (что таки тоже не больно от срывов стека помогает - просто их теперь рисуют с учетом этой фигни).

>> нет. svn умеет напрямую работать c remote, вообще ничего не скачивая. Включая
>> и diff между двумя разными состояниями того remote.
> Походу ты очень любишь собирать кораблики в бутылках. Если ты вдруг это
> еще не пробовал, обязательно попробуй, потом будешь всем доказывать что это

Дай угадаю - ты как пришел в девоп, так ничего слаще гитовой морковки-то и не пробовал?

И да, это хорошо и удобно, что мне не надо держать копий всей истории с версии 0.0.0 только чтобы иметь счастье посмотреть на двустрочный патч и решить что мне нужен не этот.

> Ну мне как-то git checkout быстрее - и совершенно не зависит от

А предварительно скачать пару гигов совершенно ненужного - тоже быстро?
И я не хочу никакой checkout, мне дорого рабочее состояние дерева.

> причуд сервера и вообще есть ли у меня в этот момент
> интернет, или я просто разлимонился на какой-нибудь лужайке с лаптопом.

у меня там будет прон, а не git checkout. Работе - рабочее время.

> Собственно как фича до кучи - почему нет? Просто вопрос в том
> много ли ты таким макаром напрограмишь, особенно с мобилки какой. Но

и будет ли это иметь смысл на следующий день, да.

> пару typo попавшихся здесь и сейчас наверное вполне ок так замахать.

главное - не больше чем пару новых по дороге насажать.

> Не то что git checkout какой.

на мабиле он довольно бесполезен - vs code не завезли. А тут - смотри, смотри - подсветочка!

> Просто фронт и бэк делают разные тела и первые не сказали вторым
> :). А теперь гадай когда до вторых дойдет что фича deprecated.

может и не дойдет.  git fetch origin pull/<pullreq_number>/head вообще через морду никогда виден не был (и не знаю где вообще про такое написано) - однако ж, работает.

> Целиком то не выпилят, а вот побустать фичи или переколбасить все -
> блин, гугол целую пикасу и гуглоплюс выпилил, IIRC, и ничего, живой.
> Думаешь MS настолько сыкливый?

они как раз настолько нессыкливые, что будет как тут: https://devblogs.microsoft.com/bharry/shutting-down-codeplex/ - After few years we bought github, it’s time to say goodbye.
Времена когда на ходу hotmail'у заменили freebsd на винду - давно прошли. И некому, и незачем.
Купили ведь не только систему, но и всю свору макак, ее обслуживающих и разрабатывающих.
Вот и пусть трудятся как умеют. Пока новая идея не клюнет.

Ответить | Правка | Наверх | Cообщить модератору

333. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от Аноним (333), 27-Май-20, 08:03 
> ну конечно же проще гадать на sigsegv'ах или ждать CVE от посторонних,

Ремотно провоцируемый что SIGSEGV, что abort - тоже CVE. Так что таких ситуаций быть не должно, а assert - потуги проверить что оно и правда так.

> чем прочитать сообщение выдаваемое перед abort()?

Эта штука обычно запущена в фоне и не отсвечивает. Так что сообщения не особо видно. Не ну системда залогит и stdout/stderr, конечно, там еще какие-то шансы понять может и будут, но и туда полезут только по каким-то поводам.

> это у нас нынче заshitа такая, косплей твоего арма.

На системе с MMU можно довольно много чего косплеить. А в гите вон чего попалось - https://github.com/git/git/blob/master/banned.h (мне стало интересно чего гит вообще банить может, оказалось функции).

> Надо обращаться не к null, а к NULL->someoffset.somemoreoffset -

А оно не упадет еще от адресации NULL, до того как дело до смещений дойдет? Ну и в вон том случае это вроде не получается.

> правда, наверное, нужно для этого переехать через 4k, что уже не так просто.

Я думаю что уловил идею. Это надо нечто типа struct = NULL и потом не в самое его начало сунуться. Но насколько трансмишн в это можно спровоцировать - вопрос. И это, что мешает запретить юзать например первые пару мегов? Это ж виртуальная память, де факто ничего не теряется кроме абстрактных циферок адресов.

> ну этот sigsegv тоже примерно так устроен - там, afair, страница мапится
> куда-то в шибкоспециальное место, которое нельзя ни read, ни write,

А, я еще припоминаю что wine это иногда хочет. И теперь понимаю почему сие портит безопасность.

> как и обычные stack gard (что таки тоже не больно от срывов стека помогает - просто
> их теперь рисуют с учетом этой фигни).

О, пришла в бошку идея в МК стек перетащить ниже переменных/"heap" (коего нет). Так переполнение стэка лишь вызовет немедленный HardFault (ниже ROM, обижается на запись), даже если MMU/MPU нет. А с 0 прикол в том что проц просто зарубает потуги обратиться к адресу 0, даже если MPU нет, прям в железо влупили. На адрес 1 и дальше - ОК. Но если 0 - фигу! В результате 1 байт адреса стэка я не могу узнать. Я его и так знаю, да и из mirror могу взять, но поначалу я был озадачен: вроде все правильно накодил, но почему-то получил в тыкву.

>> Походу ты очень любишь собирать кораблики в бутылках. Если ты вдруг это
>> еще не пробовал, обязательно попробуй, потом будешь всем доказывать что это
> Дай угадаю - ты как пришел в девоп, так ничего слаще гитовой морковки-то и не пробовал?

Я системщик а не псинодев. И если какие-то из моих действий иногда похожи на псинодевов, это случайное совпадение т.к. я посчитал какой-то из паттернов удачным. Ну и вот git мной ощущается как нормальный инструмент дева, делающий то что от него ожидается. И то что гит не навязывает никаких сетей и серваков - это для меня очень жирная фича. Которой я пользуюсь. Энное время я половину фирмвары нарисовал на природе, на одном дыхании, вообще взяв лаптоп "до кучи". Удачные идеи могут прийти в любом месте. А мистера Торвальдса можно взять за эталон эффективности воркфлоу, при минимуме прибитых на гвозди допущений. Мне такой подход нравится, и он достаточно гибок чтобы быть ОК для моих юзкейсов.

> всей истории с версии 0.0.0 только чтобы иметь счастье посмотреть на
> двустрочный патч и решить что мне нужен не этот.

А я предпочитаю держать автономно полную копию всего с чем работаю, для удобства, автономности и во избежание неожиданностей. Да и быстрее во многих случаях. Я не говорю что кораблики в бутылке обязательно плохо, но мне проще вне бутылки.

> А предварительно скачать пару гигов совершенно ненужного - тоже быстро?

Ну во первых не обязательно пару гигов, это выбираемо.
Во вторых, это 1 раз за все время возни с проектом.
В третьих, зарядить 1 длительную операцию "в фон" меня напрягает сильно меньше чем туповэйтить там и тут на каждый пшик. Я могу зарядить это и заняться другими делами. А в упомянутом случае надо все время понемногу туповэйтить. Это слишком мало чтобы капитально переключать контекст, но слишком много чтобы это не замечать как туповэйтинг. Я не считаю такое чем-то эффективным. Не люблю ждать машины.

> И я не хочу никакой checkout, мне дорого рабочее состояние дерева.

А про git stash благородный дон не слышал? А то и вовсе commit, если там что-то осмысленное уже было. Изредка commit'иться полезно и на случай если наломал дров при редактировании, чтобы меньше переделывать.

> у меня там будет прон, а не git checkout. Работе - рабочее время.

Ну я не из тех кто с 9 до 5.

> и будет ли это иметь смысл на следующий день, да.

Ну да. А так то на гитхабе дофига abandonware. Одним больше, одним меньше...

> главное - не больше чем пару новых по дороге насажать.

Актуальное замечание :]. Наверное особо утонченные ценители могут клавиатурку купить, но "в троллейбусе" это наверное уже туго.

> на мабиле он довольно бесполезен - vs code не завезли. А тут
> - смотри, смотри - подсветочка!

Подсветочка оно как бы круто. Но если обнаружилось что наломал дров по крупному и надо бы на ...цать комитов назад, как самый простой сценарий, вся эта штука не очень поможет, а с такими средствами ввода можно и дополнительно дров наломать.

> может и не дойдет.

Да кто их там знает. Модет не дойдет. Или дойдет через 5 лет. Это как раз самое западло в онлайн сервисе - никогда не знаешь когда какие-то совершенно посторонние рожи отдерут плюшку к которой ты привык и которая улучшала эффективность.

> никогда виден не был (и не знаю где вообще про такое написано) - однако ж, работает.

Хрена ты хакер? Это вообще как у них делается?

> они как раз настолько нессыкливые, что будет как тут:

Вот я о чем. Корпы они вообще такие ребяты. Посчитают что монетизировалось плохо и закроют. И фиг оспоришь. В случае с именно git это не так уж страшно, анноянс, не более.

> - After few years we bought github, it’s time to say goodbye.

Майкрософт последнее время любит прикладывать паству мордой об асфальт. При том это время пришло довольно давно, дотнет 1 -> дотнет 2 уже это практиковал.

> Времена когда на ходу hotmail'у заменили freebsd на винду - давно прошли.

Теперь они скорее заменят все это на Linux :). Инвесторы одобрят.

> И некому, и незачем.

Да и вообще у них там сейчас этот, outlook.com, чтоли, в почете, или как там его.

> Купили ведь не только систему, но и всю свору макак, ее обслуживающих
> и разрабатывающих.

Да в общем-то и всю экосистему. Думаешь с чего опенсорсники устроили исход? Им просто западло быть товаром, особенно у майкрософта.

> Вот и пусть трудятся как умеют. Пока новая идея не клюнет.

Да они наверное даже делают что и делали. Быстро такие вещи не ассимилируют. И все же как показал пример скайпа, постепенно могут и весьма качественно и круто ... изгадить.

Ответить | Правка | Наверх | Cообщить модератору

210. "Новая версия BitTorrent-клиента Transmission 3.0"  +3 +/
Сообщение от n00by (ok), 24-Май-20, 16:31 
> P.S. а что, с шитхаба теперь банально скопировать патч нельзя, кнопка raw
> куда-то исчезла?

Когда страница с патчем открыта, по ссылке типа такой:

https://github.com/31337/helloworld/commit/7f...fd

Дописываем окончание .patch, что бы получилось так:

https://github.com/31337/helloworld/commit/7f...fd.patch

Ответить | Правка | К родителю #145 | Наверх | Cообщить модератору

215. "Новая версия BitTorrent-клиента Transmission 3.0"  +/
Сообщение от пох. (?), 24-Май-20, 18:02 
вау, спасибо!

(но, йопрст - была ж вполне очевидная кнопка где-то рядом с бесполезной split/чегототам, я совсем ослеп, или ее действительно выпилили подчистую?)

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру