LINUX.ORG.RU
ФорумTalks

Релиз новой версии библиотеки glibc 2.29 в США вызвал бурю споров по поводу форматов дат

 , , форматы дат


1

1

Сабж. Американские юзеры локали en_US оказались недовольны новым дефолтом.

Было:

Fri Feb 1 05:53:41 UTC 2019
Стало:
Fri 01 Feb 2019 01:26:44 AM UTC

Для американских юзеров оказался предпочтительнее 24-х часовой формат времени. Кроме этого люди начали активно спорить какой формат дат предпочтительнее.

Американские юзеры говорят, что в США чаще всего применяются такие форматы как

Sep 20, 1990
и
09/20/1990

Некоторые европейские юзеры говорят, что у них как раз используется новый дефолтный формат для en_US:

01 Feb 2019
В свою очередь американские юзеры говорят, что в США такой формат встречается если только у военных, а почти все гражданские сначала указывают месяц, потом день, а потом год.

Год, месяц, а потом день, по ходу, указывают только в некоторых европейских странах (таких как, например, Польша и Швеция).

В общем, Патрику пришлось патчить glibc на прежний формат.

★★★★★

Ответ на: комментарий от baka-kun

могущие позволить себе современное железо

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

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

человек новую мышку выбирает, с адаптером под „легаси-порт”

Да флаг в руки, я ему не указываю, что покупать. Это же тебя чем-то USB Type-C не устраивает. У меня все мыши Bluetooth, ему помочь не могу.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

Не зеркаль свои проблемы. Зависть — плохое чувство.

Сорян, с питанием у меня проблем нет, да и айфона тоже ибо это шлак для хипсторов. Чему мне завидовать?

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

У меня тоже нет айфона, ибо не нужен, но могу себе позволить современный ноутбук вместо пятнадцатилетнего 32-бит x86.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

Да флаг в руки, я ему не указываю, что покупать.

Скоро основная масса будет с USB-C. А пока пусть запишет на ней url. Карандашом.

Лол.

Это же тебя чем-то USB Type-C не устраивает.

Разумеется не устраивает, как минимум несовместимостью с периферией.

h578b1bde ★☆
()
Ответ на: комментарий от baka-kun

У меня тоже нет айфона, ибо не нужен, но могу себе позволить современный ноутбук вместо пятнадцатилетнего 32-бит x86.

Я тоже могу, и что с того?

h578b1bde ★☆
()
Ответ на: комментарий от NeXTSTEP

Ну, использовать LC_ALL – радикально. Можно LC_COLLATE оставить в en_US.UTF-8

KennyMinigun ★★★★★
()
Ответ на: комментарий от TheAnonymous

Так LC_ALL=C разве не то?

Ну, почти. Но тоже как бы цель не та.

Ну и так, интересное (копипаста с wandbox):

LC_ALL=C.UTF-8 date
Sun Feb  3 19:42:07 JST 2019
KennyMinigun ★★★★★
()
Ответ на: комментарий от h578b1bde

Я там вообще не про десктоп писал

Последний x86 сервер без AMD64 списан и утилизирован лет десять назад. На какой помойке ты такое старье берешь?

baka-kun ★★★★★
()
Ответ на: комментарий от Deleted

Во-первых не 2, а 4.

При этом один недоступен из-за особенностей древнего чипсета, а оставшаяся половина памяти зарезервирована ядром. :)

А во-вторых — PAE.

Какие только костыли не выдумают, лишь бы не переходить на 64-бит в 2019 году. :)

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

При этом один недоступен из-за особенностей древнего чипсета

УМВР.

оставшаяся половина памяти зарезервирована ядром

У тебя ведро резервирует полтора гига? Зачем?

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

Юникстаймопроблемы.

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

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

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

Отдельные программы, взаимодействуя с ядром, обеспечивают функции системы более высокого уровня. Например, пользовательские компоненты GNU являются важной частью большинства Линукс-систем, включающей в себя наиболее распространённые реализации библиотеки языка Си, популярных оболочек операционной системы, и многих других общих инструментов Unix, которые выполняют многие основные задачи операционной системы.

© педивикия

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

Что сказать-то хотел? Или не в курсе, что у одной и той же glibc размер time_t на x86_32 — 32 бита, а на других платформах — 64?

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

Что сказать-то хотел?

Что юникстайм не стандартизирован и ломается в зависимости от архитектуры. Собственно, я это уже давно сказал.

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

Что юникстайм не стандартизирован

Unixtime стандартизирован в той же мере, что и целочисленные типы в Си.

ломается в зависимости от архитектуры

Нет, в зависимости от реализации и тараканов разработчиков. Архитектура не при чем, никто не мешал Линусу сделать иначе. На том же x86_32 в других системах под time_t отведено 64 бита.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

Unixtime стандартизирован в той же мере, что и целочисленные типы в Си.

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

Нет, в зависимости от реализации и тараканов разработчиков.

И это тоже, но в данный момент мы говорим о наиболее популярной реализации.

h578b1bde ★☆
()
Ответ на: комментарий от baka-kun

Архитектура не при чем, никто не мешал Линусу сделать иначе.

Кстати, а как сделано в миниксе? Линус же пилил максимально совместимо с ним.

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

мы говорим о наиболее популярной реализации.

У наиболее популярной реализации количество секунд хранится в 64 битах.

baka-kun ★★★★★
()
Ответ на: комментарий от h578b1bde

в самой популярной реализации в дистрибутивах линукса.

На подавляющем большинстве установок десктопного и серверного линукса time_t тоже 64 бит.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

На подавляющем большинстве установок десктопного и серверного линукса time_t тоже 64 бит.

Но при этом он зависит от архитектуры. Всегда ваш К.О.

h578b1bde ★☆
()
Ответ на: комментарий от h578b1bde

Но при этом он зависит от архитектуры.

В других ОС архитектура процессора на размер time_t не влияет, значит дело не в архитектуре, а только в реализации. Плохой из тебя КО.

При этом проблемы с переполнением в 2038 году только у маргиналов и неосиляторов.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

В других ОС архитектура процессора на размер time_t не влияет

В линуксе тоже, потому что проблема не в архитектуре процессора, а в архитектуре ОС.

а только в реализации

Какая есть, другой не завезли.

При этом проблемы с переполнением в 2038 году только у маргиналов и неосиляторов.

Верни машину времени обратно Макскому.

h578b1bde ★☆
()
Ответ на: комментарий от baka-kun

И да, различия в реализациях — следствие хренового стандарта.

h578b1bde ★☆
()
Ответ на: комментарий от Deleted

Кстати, я сталкивался с тем что proftpd для старых файлов (точно старше года) в качестве времени модификации отдавал 00:00 с правильной датой, при этом непосредственно на ФС часы с минутами во времени модификации того же файла отличались и были явно не околонулевыми. С более новыми же файлами такое не проявлялось и время совпадало с временем на ФС. Вангую что это неожиданное проявление той самой „логики” из ls.

h578b1bde ★☆
()
Последнее исправление: h578b1bde (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.