Re: glib time functions



Ali Abdin <aliabdin aucegypt edu> writes:

[CCed to evolution-hackers; please remove the thread from
gtk-devel-list on the next iteration.]

> Yes, I initially started writing these functions for evolution. I recieved a
> lot of discussion on the implementation from various people, but the Helix
> people were not really willing to accept any work on this (I was basically
> ignored). This is understandable though because they're still working on
> getting decent Gregorian support. Also I believe the iCal spec doesnt yet
> support other date formats.

Believe me, you are not ignored.  It is simply that we do not have the
resources to include support for non-Gregorian calendars ourselves;
this would initially have to come from kind contributors such as
yourself.

I would love to support non-Gregorian calendars.  Many people *do* use
them and that is good enough a reason to support them.

As I see it, the technical issues for supporting Islamic calendars are
as follows:

	- Supporting Gregorian <-> Islamic date conversions.  Ali's
          work seems to take care of this.  Determinism issues aside,
          this should be a good starting point.

	- The iCalendar specification does not support non-Gregorian
          calendars right now.  We can either

		a) devise a set of extension properties for calendar
		   components,

		or

		b) devise a formal set of properties and submit a
		   proposal for "CALSCALE: ISLAMIC" to the IETF
		   calendaring working group.

	  (b) is of course the better long-term solution.  The working
	  group is mightily busy right now trying to get their act
	  together with respect to iTIP and CAP, but I am sure you
	  could find interest for non-Gregorian calendars among the
	  people who follow the mailing list.

	- Design and implement data views that make sense for Islamic
          calendars.  Our current single-day view may be fine, but I
          have no idea of what conventions there are for viewing
          Islamic months; I also do not know if there is something
          resembling weeks.  I am sorry that I am completely ignorant
          about these issues.

	- Figure out what to do for when we want to mix calendaring
          systems.  It seems that the CALSCALE applies to a whole
          toplevel VCALENDAR component, so you cannot mix Gregorian
          and non-Gregorian appointments in the same calendar.  We can
          do funky stuff in Evolution, though; one of the planned
          features is to enhance the calendar views so that they can
          load and display multiple calendars simultaneously
          (e.g. overlay your personal calendar with the company's
          calendar).

Evolution is modular enough that it would not be intractably hard to
add support for other calendaring systems.

Unfortunately, we do not have the resources to do it.  Concrete
contributions will be very gladly accepted.

Ali, your date conversion functions are awesome!  They are not a
complete solution, though, and I do not expect them to be:  we cannot
just drop them wherever we use date values right now and expect things
to make sense.  If you have the time and energy required to
investigate all the issues mentioned above, plus any ones I am sure I
have missed, your work will be greatly appreciated.

If we have done nothing about non-Gregorian calendars yet it is simply
because of lack of resources and ignorance; it is not because we do
not consider them to be important.

  Federico




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]