TLemur > 07-12-2006 14:33:10 |
Ищется расширение, которое ищет обновления для неустановленных на данном компьютере расширений, и скачивает новые версии расширений, если такие находятся. |
Dimanish > 07-12-2006 14:37:18 |
Ёп. Это ж сколько надо времени, чтобы найти все неустановленные на твоём компьютере расширения. |
Quicksilver tears > 07-12-2006 14:41:34 |
TLemur Если тебе это нужно для тех расширений, которые ты переводшь, но которыми не пользуешься, то не проще просто создать ещё 1 профиль, поставть туда все эти расширения и время от времени проверять всё это на обновление? |
TLemur > 07-12-2006 15:11:37 |
Quicksilver tears Да, проще, но как-то неавтоматизировано, что ли... |
Nem > 07-12-2006 15:17:58 |
Если какое-то полезное расширение глючит, то я его просто отключаю, а не удаляю. Так я могу стандартным образом получить уведомление о его обновлении и проверить, пофиксены ли ошибки. Достаточно простой способ. |
SeLarin > 07-12-2006 15:20:44 |
TLemur У меня есть тулзовина, написанная для себя, которая проверяет обновления для всех расширений, сложенных в папочке, но... это скрипт, написанный на PHP (обоснование выбора языка не спрашивайте). Если надо, то могу поделиться. И даже могу попробовать сделать что-то вроде stand-alone версии (скрипт + все необходимые для его запуска программы и библиотеки). |
TLemur > 07-12-2006 15:30:32 |
SeLarin Буду благодарен. PHP есть под cygwin. |
stoneflash > 07-12-2006 15:42:14 |
SeLarin Коечно выложи. И мне тоже интересно. |
SeLarin > 07-12-2006 15:51:28 |
TLemur Какой cygwin?! Есть нативный windows! И не менее нативный *nix TLemur stoneflash Хорошо, выложу. Только ногами за него не пинать! |
Dimanish > 07-12-2006 15:52:31 |
SeLarin Таки придётся тебе extension manager со встроенным xpiinfo и прочими приблудами мастерить. ;-) |
SeLarin > 07-12-2006 15:55:36 |
Dimanish Ага. Мультиязычный (в смысле на нескольких языках написанный)... Кстати, в новом TC есть возможность к content-плагину (коим и является XPIInfo) прикрутить редактор полей... |
SeLarin > 09-12-2006 13:29:41 |
Итак, звуки фанфар... Тревожное ожидание... Дамы и господа, разрешите вам представить скрипт update.php!!! Методика использования (на сайте пока традиционно не описано ничего) Положим у меня есть папка c:\ext, в которой лежат все расширения, для которых я собираюсь искать обновления. В этой папке я создаю ещё папку, например script (т.е. c:\ext\script), в которую распаковываю содержимое архива update.rar (3,1 Кб). После этого запускаю скрипт с помощью update.bat и после завершения работы получаю найденные обновления для расширений (лежат в папке скрипта). Для запуска необходимо, чтобы файл php.exe из дистрибутива PHP находился в каталоге, прописанном в переменной окружения PATH. Для работы скрипт, естественно, требует установленного и настроенного PHP. Необходимо, чтобы загружались следующие расширения PHP: openssl, sockets, zip (файлы бибилиотек php_openssl.dll, php_sockets.dll и php_zip.dll). Те у кого есть дела поважнее скачивания, установки и настройки PHP (например нужно срочно проверить обновления для расширений) могут просто скачать готовый к работе php_pack (2,2 Мб). Архив надо распаковать в любую папку, папку прописать в PATH. Настройка в Linux/Unix может отличаться от описанной, php_pack работает только в Windows. Все замечания, предложения и пожелания направлять ко мне по любому из доступных каналов связи. Лицензии на скрипт нет, но всё-таки прошу уважать интеллектуальную собственность. |
stoneflash > 09-12-2006 18:17:35 |
SeLarin Молодец! Классно получилось! Верните назад репутацию! Дайте плюсов наставить! А потом можете убирать. В общем так. Запустить просто скрипт из update.rar не получилось. Но, скорее всего, это из-за того, что у меня для php и сервера стоит Денвер (Я под Win). Запускается это у меня всё сразу по ярлычку и диск сразу создаётся. Когда открывал update.bat - ничего не происходило. Окошко быстро открывалось и скрывалось. Зато pack заработал как часы - закинул в одну папку с самим скриптом и всё заработало. Всё нормально проверил на своих расширениях (какие перевожу). Проблема вышла только с Context Highlight 0.3. Скрипт скачал версию 0.11 . Хотя сам фокс обновления не находит. Проблема, в общем в сравнениях версий. Хотя по формальной логике 11 больше 3 ... Сейчас ещё посмотрю, может придумаю что. Хотя уже придумал: Может сделать более подробный лог? Чтобы расписывал по каждому расширению: URL xml-файла для обновления, URL, откуда скачано обновление, размер файла и т.д. зы. а может тему перенсти куда-нибудь в другой раздел? |
TLemur > 10-12-2006 07:14:41 |
stoneflash Значит, под Денвер он не работает? А какая версия? |
stoneflash > 10-12-2006 07:23:41 |
TLemur Старый. Там php 4.4.2.2 . Никак не смог запустить. Лучше пак скачай - всё просто. |
VitalyGusarov > 11-12-2006 12:01:54 |
TLemur пишетQuicksilver tears Да, проще, но как-то неавтоматизировано, что ли...
а если расширения поставить но отключить??? |
SeLarin > 11-12-2006 12:58:42 |
TLemur stoneflash Он под Denver может работать (наверное), но его надо настраивать вручную. Причём поскольку я этот самый Денвер видел один раз, то я не знаю как именно его надо настраивать. Так что пак лучше. stoneflash Когда открывал update.bat - ничего не происходило. Окошко быстро открывалось и скрывалось.
Правильно. У тебя же папка с php.exe наверняка не прописана в PATH, к тому же для PHP4 надо запускать php-cli.exe, к тому же... Проблема, в общем в сравнениях версий. Хотя по формальной логике 11 больше 3 ...
Я не виноват. Модуль для сравнения версий писал не я. Я его честно стырил с Багзиллы по наводке с нашего форума, кстати... Надо поискать тему, в которой меня на него вывели и посмотреть не обновили ли там скрипт... Может сделать более подробный лог? Чтобы расписывал по каждому расширению: URL xml-файла для обновления, URL, откуда скачано обновление, размер файла и т.д.
А он сильно нужен? Я могу сказать, что эта информация будет не очень интересна по простой причине: большинство расширений хостятся на addons.mozilla.org и, следовательно манифесты обновлений скачиваются оттуда (причём URL просто дикие) и сами расширения тоже преимущественно скачиваются оттуда. Так что такой лог будет забит однообразной инфой на самом деле. А объём скачанного файла и так пишется... |
stoneflash > 11-12-2006 15:46:06 |
SeLarin Правильно. У тебя же папка с php.exe наверняка не прописана в PATH, к тому же для PHP4 надо запускать php-cli.exe, к тому же...
НУ это ладно. Ничего я дополнительно не настраивал, поэтому и не работает. Я не виноват. Модуль для сравнения версий писал не я. Я его честно стырил с Багзиллы по наводке с нашего форума, кстати... Надо поискать тему, в которой меня на него вывели и посмотреть не обновили ли там скрипт...
А он для чего писался? А он сильно нужен? Я могу сказать, что эта информация будет не очень интересна по простой причине: большинство расширений хостятся на addons.mozilla.org и, следовательно манифесты обновлений скачиваются оттуда (причём URL просто дикие) и сами расширения тоже преимущественно скачиваются оттуда. Так что такой лог будет забит однообразной инфой на самом деле. А объём скачанного файла и так пишется...
Ну если не сложно... Было бы не плохо! |
SeLarin > 11-12-2006 16:32:02 |
stoneflash Я так понял, что он писался как раз для сравнения мозилловских версий. Я, кстати, посмотрел сегодня инфу на mdc и понял так, что 0.11 должна быть выше, чем 0.3, так что недоработочка... Ну если не сложно... Было бы не плохо! smile
Чё там сложного... echo поставить в двух местах... |
stoneflash > 12-12-2006 01:37:47 |
SeLarin Чё там сложного... echo поставить в двух местах...
Давай. И визульно надо выделить каждое расширение. Ещё раз спасибо! Сейчас сижу, все расширения обновляю. |
SeLarin > 12-12-2006 15:24:13 |
stoneflash И визульно надо выделить каждое расширение.
Это как? |
stoneflash > 12-12-2006 20:29:33 |
SeLarin ну между логами для каждого расширения вставить -------------------------------- :-) Чтоб легче было. |
SeLarin > 13-12-2006 14:03:52 |
stoneflash А-а-а... |
VictorS > 13-12-2006 14:20:26 |
Я так понял, что он писался как раз для сравнения мозилловских версий. Я, кстати, посмотрел сегодня инфу на mdc и понял так, что 0.11 должна быть выше, чем 0.3, так что недоработочка...
SeLarin, на сколько я понял это для сравнения не совсем самих версий, а для сравнения масок версий в информации о совместимости браузеров. Версии же расширений нумеруются просто числами, на сколько мне известно. Употреблять всякие 0.3.1a5 нельзя. (Или все же можно?) А значит можно просто split('\.', $version_v) и сравнить поэлементно 2 массива. Если число элементов в массивах не совпадают, но все первые элементы более длинного совпадают с элементами более короткого, то более длинная версия новее. Еще скрипт все же не может справиться с некоторыми расширениями из-за национальных кодировок в install.rdf. (У меня он не смог прочитать install.rdf из файла локализованного Mr Tech Local Install.) |
SeLarin > 13-12-2006 14:38:11 |
Обновляйтесь. Добавлено Срд 13 Дек 2006 14:46:26 : VictorS Нет, это именно для сравнения версий. Сейчас для нумерации используется так называемый Toolkit version format. Согласно ему каждая часть версии может в свою очеред состоять ещё из четырёх частей, причём не только числовых. Еще скрипт все же не может справиться с некоторыми расширениями из-за национальных кодировок в install.rdf. sad (У меня он не смог прочитать install.rdf из файла локализованного Mr Tech Local Install.)
Не пробовал указать правильную кодировку в <?xml>? Что написано в errors.log по этому поводу? |
VictorS > 13-12-2006 14:58:52 |
Не пробовал указать правильную кодировку в <?xml>?
А я-то тут причем? Это автор расширения не указал. И я знаю что это исправить почти не возможно. Анализатор текста для определения кодировки - это жестоко. До логов сейча не добраться. А за ссылку на описание формата версий спасибо. Конечно пока не все понял, но разбираюсь... Такие версии как "1.1.-1" или "1.*.1" выглядят достаточно смешно. |
SeLarin > 13-12-2006 15:22:14 |
VictorS Просто в качестве теста мог бы и указать. ) Дело в том, что скрипт делает проверку на правильность загрузки, потому что во многих случаях авторы кодировку указать забывают, но при этом пишут символами, недопустимыми в UTF-8. Файл без указания кодировки пытается загрузиться как UTF-8 и оба на! Я сам на такое натыкался и сделал так, что если манифест не загружается сразу, то я его перекодирую в UTF-8 из ISO какой-то и загружаю снова. Если снова не загружается манифет, то оба на насовсем! Теперь же я подумал, что логично добавить предварительное определение кодировки перед перекодировкой. В PHP это сделать не так уж и сложно, как тебе кажется... |
VictorS > 13-12-2006 15:41:46 |
Теперь же я подумал, что логично добавить предварительное определение кодировки перед перекодировкой. В PHP это сделать не так уж и сложно, как тебе кажется...
SeLarin, тогда, если не секрет, как? Я уже смотрел кусочек кода про борьбу с неверной кодировкой и все вышесказанное мне понятно было... Я не особо интересовался поиском функции определения кодировки. Но если такой нет в библиотечках, и писать ее на PHP, то работать будет медленно, ИМХО. Да и писать не так уж легко, как мне кажется. Неужели я так увлекся программированием в VS2005, что напроч забыл все что знал про PHP? |
SeLarin > 13-12-2006 16:39:23 |
VictorS Здесь |
VictorS > 13-12-2006 17:20:23 |
SeLarin Между всякими SQL ни когда и не замечал раздела Multibyte String. Всетаки стоит перечитать мануал посильнее, а не просто то что из новинок замечаю. Учился я еще на PHP3... |
SeLarin > 13-12-2006 17:48:11 |
VictorS Мда... Я помнится тоже с него начинал, потому что PHP4 не хотел запускаться на Win 95. Слава богу, что это длилось недолго. |
SeLarin > 16-12-2006 19:45:43 |
Обнаружил в скрипте багу. Не страшную, но критичную. Поэтому советую всем заинтересованным обновиться. Оказывается в этом форуме темы так быстро вниз падают... Еле нашёл сейчас...
|
TLemur > 17-12-2006 15:02:05 |
SeLarin Спасибо. Обновился. Кстати, а что мешает сделать сохранение файла с тем же именем, что и на сервере? А то для некоторых расширений, в частности, для Separe там такая мешанина получается... |
SeLarin > 18-12-2006 10:52:17 |
TLemur Кстати, а что мешает сделать сохранение файла с тем же именем, что и на сервере?
Да в принципе ничего не мешает. Просто как-то не сделал, а потом нужды не было. Поскольку скрипт писался под свои нужды, то он сохраняет файлы примерно с теми именами, с которыми они будут лежать у меня. Можно и переделать в принципе. |