Полезная информация

Mozilla Россия — свежие версии программ Mozilla, а также масса полезной информации по каждому продукту.
  • Форумы
  •  » Firefox
  •  » Почему так быстро устаревают плагины для Firefox?

№2605-10-2011 07:20:51

hydrolizer
Участник
 
Группа: Extensions
Зарегистрирован: 22-07-2009
Сообщений: 1945
UA: Firefox 8.0

Re: Почему так быстро устаревают плагины для Firefox?

Так. Продолжим.

MySh пишет

Я могу сказать, что конкретно мне не нравится и что у меня поломалось

Это всё понятно, но вопрос был а) о новшествах, внесенных после 4-й версии (4-я версия - это очень отдельный случай); б) новшествах, чреватых несовместимостью дополнений. Всё, что вы перечислили, либо появилось в версии 4, либо никак на совместимость не влияет (например, потому, что абсолютно новая функциональность - как та же панорама - в принципе не может влиять на старую), либо и то, и другое вместе. Разговор же у нас о несовместимости расширений, а не о том, почему в новых версиях всё так плохо :)
Если кому интересно - вот что в версиях после 4-й ветки могло повлиять на совместимость расширений:

скрытый текст
Firefox 5:

  • In order to comply with the HTML5 specification, support for the UTF-7 and UTF-32 character sets has been removed.
  • WebGL no longer loads textures from domains other than the originating domain, as a security measure. HTTP access control support should be coming sometime in the future to make this possible more securely.
  • The selection object's modify() method has been changed so that the "word" selection granularity no longer includes trailing spaces; this makes it more consistent across platforms and matches the behavior of WebKit's implementation.
  • The window.setTimeout() method now clamps to send no more than one timeout per second in inactive tabs. In addition, it now clamps nested timeouts to the smallest value allowed by the HTML5 specification: 4 ms (instead of the 10 ms it used to clamp to).
  • Similarly, the window.setInterval() method now clamps to no more than one interval per second in inactive tabs.
  • The Blob and, by extension, the File objects' slice() method has been removed and replaced with a new, proposed syntax that makes it more consistent with Array.slice() and String.slice() methods in JavaScript. This method is named mozSlice() for now.
  • The Node.prefix property is now read only, as required by the DOM specification.
  • Regular expressions are no longer callable as if they were functions; this change has been made in concert with the WebKit team to ensure compatibility (see WebKit bug 28285. This feature had existed for a long time but was never documented (at least, not here on MDC).
  • Firefox no longer sends the Keep-Alive HTTP header; we weren't formatting it correctly, and it was redundant since we were also sending the Connection: or Proxy-Connection: header with the value "keep-alive" anyway.
  • The nsIAppStartup2 and nsIAppStartup_MOZILLA_2_0 interfaces have been merged into the nsIAppStartup interface.
  • The nsIDocShell_MOZILLA_2_0_BRANCH interface has been merged into the nsIDocShell interface.
  • The nsIFocusManager_MOZILLA_2_0_BRANCH interface has been merged into the nsIFocusManager interface.
  • The nsIHTMLEditor_MOZILLA_2_0_BRANCH interface has been merged into the nsIHTMLEditor interface.
  • The following interfaces were implementation details that are no longer needed:

    • nsICiter (see bug 633066 )
    • nsIDOM3Document (see bug 639849 )
    • nsIFIXptrEvaluator
    • nsISelectElement (see bug 619996 )

Firefox 6:

  • <form> elements' text <input> fields no longer support the XUL maxwidth property; this was never intentional, and is in violation of the HTML specification. You should instead use the size attribute to set the maximum width of input fields.
  • The azimuth CSS property is no longer supported, as we have removed what little code we had for the aural media group. It was never significantly implemented, so it made more sense to remove the crufty implementation for the time being rather than try to patch it up.
    In the past, the :hover pseudoclass was not applied to class selectors when in quirks mode; for example, .someclass:hover did not work. This quirk has been removed.
  • navigator.securityPolicy, which has returned an empty string for a long time, has been removed outright.
  • The document.height and document.width have been removed. bug 585877
  • The DocumentType object's entities and notations properties, which were never implemented and always returned null, have been removed, since they've been removed from the specification anyway.
  • The DOMConfiguration interface and the document.domConfig property that used it have both been removed; they were never supported and have since been removed from the DOM specification.
  • The FileReader interface's abort() method now throws an exception when used if no file read is in progress.
  • The document.strictErrorChecking property has been removed, since it was never implemented and was removed from the DOM specification.
  • The window.top property is now properly read only.
  • DOM views, which we never documented, have been removed. This was a bit of implementation detail that was unnecessarily complicating things, so we got rid of it. If you notice this change, you're probably doing something wrong.
  • The mozResponseArrayBuffer property of the XMLHttpRequest object has been replaced with the responseType and response properties.
  • For security reasons, data: and javascript: URIs no longer inherit the security context of the current page when the user enters them in the location bar; instead, a new, empty, security context is created. This means that script loaded by entering javascript: URIs in the location bar no longer has access to DOM methods and the like, for example. These URIs continue to work as before when used by script, however.
  • Support for microsummaries has been removed; these were never widely used, were not very discoverable, and continuing to support them was making improvements to the Places (bookmark and history) architecture difficult.
  • The following interfaces were implementation details that are no longer needed:

    • nsIDOMDocumentEvent (see bug 655517 )
    • nsIDOMDocumentTraversal (see bug 655514 )
    • nsIDOMDocumentRange (see bug 655513 )
    • IWeaveCrypto (see bug 651596 )
    • nsIDOM3DocumentEvent (see bug 481863 )
    • nsIDOMAbstractView
    • nsILiveTitleNotificationSubject
    • nsIPlugin (see bug 637253 )
    • nsIPluginInstance (see bug 637253 )
    • nsIHTMLEditRules (see bug 633750 )
    • nsIXSLTProcessorObsolete (see bug 649534 )

Firefox 7:

  • The HTMLHeadElement profile property has been removed, this property has been deprecated since Gecko 2.0.
  • The HTMLImageElement x and y properties have been removed.
  • Support for the non-standard globalCompositeOperation operations clear and over has been removed.
  • The File interface's non-standard methods getAsBinary(), getAsDataURL(), and getAsText() have been removed as well as the non-standard properties fileName and fileSize.
  • document.createEntityReference has been removed. It was never properly implemented and is not implemented in most other browsers.
  • document.normalizeDocument has been removed. Use Node.normalize instead.
  • DOMTokenList.item now returns undefined if the index is out of bounds, previously it returned null.
  • Node.getFeature has been removed.
  • The HTMLInsElement and HTMLDelElement interfaces have been removed, since the <ins> and <del> elements actually use the HTMLModElement interface.
  • window.resizeTo, window.resizeBy, window.moveTo , and window.moveBy no longer apply to the main window.
  • The Function.arity property has been removed; use Function.length instead.
  • The nsIMarkupDocumentViewer_MOZILLA_2_0_BRANCH interface has been merged into the nsIMarkupDocumentViewer interface.
  • The nsIDOMWindow2 interface has been merged into the nsIDOMWindow interface.
  • The nsIDOMWindow_2_0_BRANCH interface has been merged into the nsIDOMWindowInternal interface.
  • nsINavHistoryObserver methods with URI parameters now require a GUID as well.
  • The nsISHistory_2_0_BRANCH interface has been merged into the nsISHistory interface.
  • The nsIMemoryReporter interface has been substantially changed; if you use it, you will need to make some adjustments to your code.
  • The nsIThreadInternal2 interface has been merged into the nsIThreadInternal interface.
  • The following interfaces were implementation details that are no longer needed:

    • nsIDOM3Attr
    • nsIDOM3Node
    • nsIDOM3TypeInfo
    • nsIDOM3Text
    • nsIDOMDocumentStyle
    • nsIDOMNSDocument
    • nsIDOMNSFeatureFactory
    • nsIDOMNSHTMLDocument
    • nsIDOMNSHTMLFormElement
    • nsIDOMNSHTMLHRElement
    • nsIDOMNSHTMLTextAreaElement

  • The following interfaces were removed as part of the removal of the ActiveX embedding API:

    • DITestScriptHelper
    • DWebBrowserEvents
    • DWebBrowserEvents2
    • IDispatch
    • IMozControlBridge
    • IMozPluginHostCtrl
    • IWebBrowser
    • IWebBrowser2
    • IWebBrowserApp
    • IXMLDocument
    • IXMLElement
    • IXMLElementCollection
    • IXMLError
    • nsIActiveXSecurityPolicy
    • nsIDispatchSupport
    • nsIMozAxPlugin
    • nsIScriptEventHandler
    • nsIScriptEventManager

Firefox 8 (draft):

  • The HTMLIsIndexElement constructor has been removed. No elements have implemented this interface since before Firefox 4.
  • document.getSelection() now returns the same Selection object as window.getSelection(), instead of stringifying it.
  • window.navigator.taintEnabled has been removed; it has not been supported in many years.
  • The deflate-stream extension to WebSockets has been disabled; it has been deprecated, and was breaking compatibility with some sites.
  • ISO8601DateUtils.jsm code module has been removed. The parse() method now supports ISO 8601 dates and should be used instead.
  • The ownerWindow attribute has been removed from the nsIAccessNode interface.
  • The nsIDOMStorageWindow interface has been merged into the nsIDOMWindow interface.
  • All members of the nsIDOMWindowInternal interface have been moved into the nsIDOMWindow interface. The interface itself (with no members) remains available for compatibility until Firefox 9.
  • The nsIMemoryReporter KIND_MAPPED attribute has been deprecated in favor of KIND_NONHEAP.
  • The nsISelection2 interface has been merged into the nsISelectionPrivate interface.
  • The nsISelection3 interface has been merged into the nsISelection interface.
  • The nsISessionStartup attribute state is now a jsval instead of a string, for performance reasons.
  • The nsIDocShell attribute isActive is now false for minimized windows.
  • The following interfaces were implementation details that are no longer needed:

    • nsITimelineService
    • nsIDOMHTMLIsIndexElement


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

MySh пишет

А вы почитайте форум, где люди пишут о проблемах с Касперским, Lingvo и Промтом — за которые они, между прочим, заплатили денег (многие, по крайней мере) — и тогда уже делайте выводы.

Так пусть за работоспособность этих творений и отвечают сами разработчики творений - обеспечивают совместимость, отслеживают обновление продукта, который они бесплатно используют для создания доп. функционала к своему основному продукту. FF-то здесь при чем? В противном случае, извините, получится ситуация "блохи рулят собакой".

MySh пишет

Я этого не знаю и знать не хочу.

Вас об этом знать никто не заставляет - об этом обязаны знать разработчики продукта. И все претензии - к ним.

MySh пишет

Если я купил продукт, я хочу, чтобы он работал. Точка.

Вы купили продукт, да. Но не Firefox вместе с ним в одной коробке. Который вполне себе работает - не работает продукт, использующий FF. Как вы думаете, кто тут виноват?

Отсутствует

 

№2713-10-2011 01:46:07

MySh
Кактусогрыз
 
Группа: Extensions
Зарегистрирован: 17-12-2006
Сообщений: 4623
UA: Firefox 7.0

Re: Почему так быстро устаревают плагины для Firefox?

hydrolizer

Вас об этом знать никто не заставляет - об этом обязаны знать разработчики продукта. И все претензии - к ним.

Это всё понятно. Но факт в том, что при старом темпе обновлений сторонние разработчики коммерческих расширений как-то поспевали за новыми версиями, а сейчас часто — нет. Вот я хочу понять, почему. Они что, внезапно стали глупее? Ленивее? В чём же дело?

[firefox] вполне себе работает - не работает продукт, использующий FF. Как вы думаете, кто тут виноват?

А вот интересный момент. Дело в том, что с недавнего времени номер версии Firefox не играет роли, по крайней мере с точки зрения маркетинга, но при этом фактически он определяет, будет ли работать расширение, использующее модули с двоичным кодом. Поэтому разработчики честно пишут, что их продукт совместим с Firefox — и, что характерно, не врут ведь! Но только забывают уточнить, с какой именно версией совместим, как и то, что через несколько недель после обновления он снова отвалится, и никто ничего не будет с этим делать, или будет, но не сразу — как раз к новой версии Firefox поспеют… И если пользователь всего этого не знает, то со всей очевидностью следует вывод, что он значит и виноват — не изучил ситуацию, не спланировал возможные последствия, не провёл экспертизу и не учёл множества очевидных любому квалифицированному разработчику нюансов и т. д. Вот только беда в том, что пользователи вряд ли будут готовы с этим согласиться, а вместо этого будут продолжать время от времени появляться вот такие отзывы: ссылка, ссылка, ссылка, ссылка, и ещё одна ссылка, и много их ещё будет, ой много… Можно говорить, что это троллинг, проплаченный пиар, заговор адептов Хрома и Оперы, вот только не на пустом же месте такие настроения появляются?

Отсутствует

 

№2813-10-2011 19:19:08

feas
Участник
 
Группа: Extensions
Откуда: от DNS
Зарегистрирован: 25-08-2011
Сообщений: 5213
UA: Aurora 9.0
Веб-сайт

Re: Почему так быстро устаревают плагины для Firefox?

Эта проблема теперь у нас как бородатый анекдот... :(


Добро пожаловать на форум mozilla-russia.org. Здесь вы можете посоветоваться или обратиться за помощью к фанатам и пользователям продуктов Мозиллы. Если не знаете как правильно оформить пост специально для вас расписан пункт 2.2 правил форума
Сброс на примере Firefox – лёгкое решение большинства проблем
Починка браузера. Перенос своих настроек на новый профиль.

Отсутствует

 
  • Форумы
  •  » Firefox
  •  » Почему так быстро устаревают плагины для Firefox?

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]