ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Sergey Vlasov <vsu@altlinux.ru>
To: devel@lists.altlinux.org
Subject: Re: [devel] PHP 5.3.3 [was: Прототипы дизайна интерфейсов Кентавра]
Date: Tue, 10 Aug 2010 23:01:27 +0400
Message-ID: <20100810190127.GA6030@atlas.home> (raw)
In-Reply-To: <4C616C9B.1040700@altlinux.ru>

[-- Attachment #1: Type: text/plain, Size: 3277 bytes --]

On Tue, Aug 10, 2010 at 07:13:31PM +0400, Alexey Gladkov wrote:
> On 10.08.2010 13:49, Slava Dubrovskiy wrote:
[...]
> > 2. Зачем конфиги располагаются в версийзависимых директориях?
> 
> Чтобы можно было держать несколько php разных версий одновременно.

Вопрос в том, насколько разных?  Т.е., нужно ли обеспечивать
теоретическую возможность наличия рядом, например, 5.2.13 и 5.2.14?

Кстати, использованный метод реализации (php_ini_path_override в
каждом sapi) в некоторых случаях ведёт себя не так, как оригинальный
(например, если установлена переменная PHPRC, но в указанном там
каталоге нет php.ini, системный php.ini не будет найден).  Возможно,
применённая схема была не совсем правильной (вместо засовывания
каждого sapi в отдельный каталог можно было собирать php с
--with-config-file-path=%php5_sysconfdir, а для поддержки отдельных
файлов конфигурации для разных sapi создавать там файлы php-SAPI.ini,
не трогая стандартный механизм поиска).

Впрочем, основная проблема в наличии в php.ini настроек, зависящих от
версии php - safe_mode_include_dir, include_path, extension_dir,
alt_sapi_config_ini_scan_dir, из-за которых при изменении версии php в
любом случае придётся править этот файл.  Причём введение переменной
alt_sapi_config_ini_scan_dir, насколько я понял, вызвано главным
образом желанием использовать отдельные каталоги для разных sapi (в
противном случае хватило бы опять-таки сборки с нужным значением
--with-config-file-scan-dir); в принципе это место можно попытаться
пропатчить для использования php-SAPI.d и избавиться от переменной в
php.ini (которая тоже добавлена патчем).

Ещё можно попробовать перенести в main/main.c инициализацию части
констант (как минимум PHP_VERSION) до вызова php_init_config(); тогда
можно будет писать в php.ini что-то типа

  alt_sapi_config_ini_scan_dir = "/etc/php/" PHP_VERSION "/cli/php.d"

Кстати, в ветке 5.3 это изменение порядка инициализации уже сделано.
Тогда можно будет иметь php.ini с содержимым, не зависящим от версии,
и, например, по умолчанию класть в каталог с конкретным номером версии
симлинк на файл из каталога php-5.2 (или 5.3 - их, видимо, всё-таки
придётся разносить), а уже те файлы просто объявить как %config.
Правда, остаётся открытым вопрос с обновлением фрагментов конфигурации
для расширений.

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

Однако автоматически это не происходит.  Можно допустить, что при
обновлении типа 5.2.x -> 5.3.x что-то действительно нужно менять
вручную, но в пределах одной ветки (как сейчас, 5.2.13 -> 5.2.14)
хотелось бы хоть какой-то автоматизации.

> > 3. Зачем safe-mode включен по умолчанию? 
> 
> Не знаю как сейчас, но раньше я делал для этих целей control. В одном
> из его профилей все гайки были раскручены. Также был реализован
> механизм для создания своих профилей для control.

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

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

  parent reply	other threads:[~2010-08-10 19:01 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-29 12:18 [devel] Прототипы дизайна интерфейсов Кентавра Андрей Черепанов
2010-07-29 17:47 ` Igor Zubkov
2010-07-31 10:17           ` [devel] [Comm] " Anton A. Vinogradov
2010-07-31 10:26             ` Andrey Rahmatullin
2010-07-31 10:32               ` [devel] [Comm] Бесперспективность vs Членство в TEAM (Прототипы дизайна интерфейсов Кентавра) Anton A. Vinogradov
2010-07-31 10:37                 ` Andrey Rahmatullin
2010-08-03  6:20               ` [devel] [Comm] Прототипы дизайна интерфейсов Кентавра Anton Farygin
2010-08-03  6:21                 ` Andrey Rahmatullin
2010-08-03 11:54                 ` Денис Смирнов
2010-08-03 16:53                   ` Anton Farygin
2010-08-03 17:18                     ` Slava Semushin
2010-08-03 18:40                       ` Anton Farygin
2010-08-04  6:00                         ` Денис Смирнов
2010-08-04  6:20                           ` Alexey Gladkov
2010-08-04 20:56                             ` Денис Смирнов
2010-08-04 21:27                               ` Alexey Gladkov
2010-08-07  7:17                                 ` Денис Смирнов
2010-08-07  8:34                                   ` Alexey Gladkov
2010-08-10  9:49                             ` [devel] PHP 5.3.3 [was: Прототипы дизайна интерфейсов Кентавра] Slava Dubrovskiy
2010-08-10 10:33                               ` [devel] Умолчания PHP [was: PHP 5.3.3] Anton Farygin
2010-08-10 12:20                                 ` Slava Dubrovskiy
2010-08-10 12:37                                   ` Anton Farygin
2010-08-10 13:10                                     ` Dmitriy Kulik
2010-08-10 14:54                                     ` Sergey Kurakin
2010-08-10 18:56                                       ` Dmitriy Kulik
2010-08-11  9:19                                     ` Денис Смирнов
2010-10-13 21:03                                       ` Michael Shigorin
2010-08-10 13:54                                 ` Sergey Kurakin
2010-08-10 15:13                               ` [devel] PHP 5.3.3 [was: Прототипы дизайна интерфейсов Кентавра] Alexey Gladkov
2010-08-10 17:21                                 ` Sergey Kurakin
2010-08-10 18:53                                   ` Alexey Gladkov
2010-08-10 19:01                                 ` Sergey Vlasov [this message]
2010-08-10 20:22                                   ` Alexey Gladkov
2010-08-11  9:26                                     ` Dmitriy Kulik
2010-08-11  9:28                                       ` Dmitriy Kulik
2010-08-11  9:38                                         ` Anton Farygin
2010-08-11 10:20                                           ` Dmitriy Kulik
2010-08-11 11:08                                             ` Anton Farygin
2010-08-11 12:24                                               ` Dmitriy Kulik
2010-08-11 12:37                                                 ` Anton Farygin
2010-08-11 12:52                                                   ` Dmitriy Kulik
2010-08-11 12:58                                   ` Slava Dubrovskiy
2010-08-11 18:09                                     ` Sergey Vlasov
2010-08-11 20:41                                       ` Slava Dubrovskiy
2010-08-12 10:02                                         ` Sergey V Turchin
2010-08-12 10:19                                           ` [devel] -D_FORTIFY_SOURCE=2 Alexey Tourbin
2010-08-12 10:24                                             ` Dmitry V. Levin
2010-08-12 10:43                                         ` [devel] тормоза [was: PHP 5.3.3 Прототипы дизайна интерфейсов Кентавра] Ildar Mulyukov
2010-08-12 10:53                                           ` Anton Farygin
2010-08-12 12:58                                             ` Dmitriy Kulik
2010-08-11 13:11                                 ` [devel] PHP 5.3.3 [was: " Slava Dubrovskiy
2010-08-11 13:48                                   ` Alexey Gladkov
2010-08-11 21:01                                     ` Slava Dubrovskiy
2010-08-11 13:48                                   ` Dmitriy Kulik
2010-08-04  6:37                           ` [devel] [Comm] Прототипы дизайна интерфейсов Кентавра Anton Farygin
2010-08-04  8:25                           ` Sergey Kurakin
2010-08-07  7:16                             ` Денис Смирнов
2010-08-05  6:27               ` [devel] security updates, long-term Michael Shigorin
2010-08-05  6:35                 ` Andrey Rahmatullin
2010-08-05  6:44                   ` Michael Shigorin
2010-08-05  7:55                     ` Alex Gorbachenko
2010-08-05  7:58                       ` Andrey Rahmatullin
2010-08-05  8:02                         ` Slava Semushin
2010-08-05 12:14                       ` Денис Смирнов
2010-08-05 13:24                         ` Slava Semushin
2010-08-05 13:28                           ` Slava Semushin
2010-08-06 14:02                           ` Денис Смирнов
2010-08-05 13:39                         ` Alex Gorbachenko
2010-08-06 14:12                           ` Денис Смирнов
2010-08-05 14:45                       ` Michael Shigorin
2010-07-31 13:39 ` [devel] Прототипы дизайна интерфейсов Кентавра Max Ivanov
2010-07-31 23:52   ` Alexey I. Froloff
2010-08-04 21:44           ` [devel] grub, alterator-vm (was: [Comm] Прототипы дизайна интерфейсов Кентавра) Michael Shigorin
2010-08-12 14:33 ` [devel] Прототипы дизайна интерфейсов Кентавра Alexey Shabalin
2010-08-13  6:44   ` Sergey Shilov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100810190127.GA6030@atlas.home \
    --to=vsu@altlinux.ru \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git