Miranda NG:About/be: Difference between revisions

From Miranda NG
Miranda NG:About/be
Jump to navigation Jump to search
(Imported translation using page migration)
(Imported translation using page migration)
Line 33: Line 33:
By autumn 2012 fifteen members joined the project, at least half of them are actively involved in the development.
By autumn 2012 fifteen members joined the project, at least half of them are actively involved in the development.


== Project principles ==
== Прынцыпы праекта ==


* The project includes the core and all the plugins, so that any member of the team can check (and fix if necessary) the code of any plugin.
* The project includes the core and all the plugins, so that any member of the team can check (and fix if necessary) the code of any plugin.

Revision as of 16:09, 19 June 2018

Other languages:

Miranda NG (Next Generation) — форк Miranda IM, створаны былымі яе распрацоўшчыкамі.

Miranda NG is distributed under GNU General Public License.

Protocol support

  • GG (Gadu-Gadu)
  • IRC (Internet Relay Chat)
  • MRA (Mail.ru Agent)

Supported operating systems

Windows 2003 / XP SP3 / Vista / 7 / 8 / 10.

Гісторыя

C вясны 2012 года ў распрацоўцы Miranda IM склалася патавая сітуацыя:

  1. Дзейсная мадэль распрацоўкі Міранды апынулася цалкам нежыццяздольнай па наступных прычынах:
    • Зменам ў ядры патрабавалася парадку паўтары гадоў, каб быць падхоплены распрацоўшчыкамі плагінаў і быць, нарэшце, даведзенымі да канчатковых карыстальнікаў. У выніку затрымкі атрымліваліся велізарнымі.
    • Зыходны код плагінаў быў раскіданы па дзесятках рэпазітароў, а для многіх плагінаў (актуальны) зыходны код быў наогул недаступны. Гэта абмяжоўвала ці ўвогуле рабіла немагчымым аўдыт кода плагінаў з боку удзельнікаў каманды. Адпаведна, код некаторых плагінаў ўтрымлівае нерабочы, неэфектыўны або заведама памылковы код, і ніхто не мог на гэта паўплываць.
    • Існаваў велізарны воз праблем з сумяшчальнасцю паміж рознымі версіямі ядра Міранды і нават паміж версіямі асобных плагінаў. Асабліва гэта тычылася падтрымкі Unicode, якая ў Miranda IM так і не даведзена да канца.
  2. Склаўся выразна выспеўшы канфлікт паміж дзвюма асноўнымі на той момант распрацоўшчыкамі Міранды: Георгіем Хазанам (ghazan) і Барысам Красноўскім (borkra), апошняй кропляй якога стаў адкат Барысам фікса для зробленай ім памылкі з-за таго, што ў каментары да камітаў было ўжыта ангельскае прычасце borkred, вынайдзенае для «зламаных» ім частак Міранды адным з удзельнікаў праекту (не Георгіем).

У выніку ўсяго гэтага ў пачатку красавіка 2012 тагачасны куратар ядра Miranda IM Георгій Хазан прыняў рашэнне пакінуць праект, нягледзячы на наяўнасць мноства відавочных кірункаў развіцця Міранды. Аднак, у працэсе перамоваў паміж рознымі бакамі было прынята рашэнне арганізаваць новы праект, пад яго кіраўніцтвам.

15 мая 2012 года зыходны код ядра Міранды быў заліты ў асобны рэпазітар, і ў яго потым было дададзена больш за сотню плагінаў. Плагіны для партавання выбіраліся па прынцыпе частоты выкарыстання і папулярнасці на сайце www.miranda-vi.org. Адназначна выключаліся плагіны, для якіх не існавала актуальнага зыходнага кода. У далейшым у зыходныя тэксты было ўнесена больш за паўтары тысячы змяненняў, пасля чаго 30 жніўня 2012 быў выпушчаны першы рэліз Miranda NG.

By autumn 2012 fifteen members joined the project, at least half of them are actively involved in the development.

Прынцыпы праекта

  • The project includes the core and all the plugins, so that any member of the team can check (and fix if necessary) the code of any plugin.
  • Every next Miranda NG version is compatible only with itself (i. e., all plugins of the same build are compatible with each other while two adjacent builds can be completely incompatible). This makes it possible to get rid of bulky code in many parts of Miranda core and offers great opportunity for global optimization of both the core and the plugins.
  • ANSI is not supported anymore. Compiling with Visual Studio 2010 and 2013 is supported.
  • All the team members have different access rights: some can commit to any code, some can commit only to the plugins' code, some are engaged in the bugtracker and wiki.

Miranda NG advantages

  • Plugins can be loaded/unloaded dynamically ("on the fly") without having to restart the program.
  • The speed of program startup and operation was increased.
  • The consumption of system resources (GDI and RAM) was significantly reduced. This was achieved through extracting unused parts of the core to separate modules (those were placed into Core folder).
  • All plugins are gathered in a single repository, any changes required are applied to them immediately without waiting for the plugin developers' response (which could take months for Miranda IM).
  • A great deal of work on unification was done – lots of features implemented in several plugins independently were moved to the core.
  • Getting rid of old bugs and "crutches" improves the overall stability of the program.
  • Some coders who abandoned the development of Miranda IM plugins for various reasons now return to Miranda NG development.

Features and differences from Miranda IM

  • Due to major changes in the core, Miranda NG is not compatible with plugins for Miranda IM.
  • The standard Miranda NG core modules were extracted to Core folder in the root of the program. These modules are not loaded into memory if their "substitutes" are found in Plugins folder. Also, they are automatically loaded when the "substitutes" are being disabled. It saves memory and reduces the load time of the program. (Miranda IM keeps in memory unnecessary modules together with their "substitutes".)
  • ANSI is no longer supported. The core and all the plugins support Unicode completely.
  • The multiple toolbars implemented in each contact list plugin in their own way were replaced with TopToolBar plugin which had undergone great changes.
  • Dbtool became a plugin. Now database checking and compression are performed by database drivers. (Miranda IM has to have a special dbtool for each database format.) Thus, DbChecker and Import plugins just run the appropriate driver and there is no need to have a special tool for each driver.
  • There is PluginUpdater – plugin to keep your Miranda NG up-to-date.
  • ExtraIcons plugin was moved into the core.

See also

External links