1 2007-01-17 Tor Lillqvist <tml@novell.com>
3 * glib/galloca.h: Use <malloc.h> also with Digital Mars compiler
4 on Win32. (#346808, Serhat Sevki Dincer)
6 2007-01-16 Matthias Clasen <mclasen@redhat.com>
10 * glib/glib.symbols: Revert an accidental ABI break by
11 moving gettime out of the GThreadFunctions struct and making
12 it a separate variable. (#397139, Joe Marcus Clarke)
16 2007-01-16 Tor Lillqvist <tml@novell.com>
18 * glib/gthread.c (gettime): GetSystemTimeAsFileTime() returns 100s
19 of nanoseconds since 1601, so offset to Unix epoch (1970) and
20 multiply by 100 to get nanoseconds which is what we want.
22 2007-01-15 Tor Lillqvist <tml@novell.com>
24 * glib/gmain.h (struct _GPollFD): Fix mistake in my last commit.
26 2005-01-15 Matthias Clasen <mclasen@redhat.com>
29 * glib/gbookmarkfile.c: Remove redundant NULL-checks.
30 (#369668, Morten Welinder)
32 2005-01-15 Matthias Clasen <mclasen@redhat.com>
35 * gthread/gthread-posix.c: Correct the gettime calculations
36 once more. (#395203, Chris Wilson)
38 2007-01-15 Tor Lillqvist <tml@novell.com>
40 * glib/gmain.h (struct _GPollFD): Prepare for potential Win64
41 build: Use gint64 for the fd field on Win64, as we want to be able
42 to store a HANDLE in it. (#395422) (Other changes will surely also
43 be necessary when building on Win64, at least in giowin32.c.)
45 2007-01-15 Tor Lillqvist <tml@novell.com>
47 * glib/gwin32.c (g_win32_getlocale): Simplify greatly. Instead of
48 hardcoding a large switch statement, just ask Windows for the
49 ISO639 and ISO3166 codes. Tack on @Latn or @Cyrl for those
50 languages which can alternatively be written in Latin or
51 Cyrillic. Fixes #395419.
53 2007-01-12 Matthias Clasen <mclasen@redhat.com>
55 * glib/gkeyfile.c: Rework the handling of invalid
56 keys/groups again. We are back to being liberal about
57 what we accept, and only reject things that would lead
58 to non-rereadable keyfiles.
60 * tests/keyfile-test.c: Adapt tests.
62 2007-01-12 Matthias Clasen <mclasen@redhat.com>
64 * glib/gutils.c (g_get_home_dir): Clarify docs. (#394687,
67 2007-01-12 Matthias Clasen <mclasen@redhat.com>
69 * glib/gthread.c: Include windows.h and fix
70 include order. (#394258, Kazuki Iwamoto)
72 2007-01-12 Matthias Clasen <mclasen@redhat.com>
74 * configure.in: Make G_GNUC_INTERNAL a no-op for
75 gcc 2.95. (#329031, David Schleef, Marc Brockschmidt)
77 2007-01-12 Matthias Clasen <mclasen@redhat.com>
79 * gthread/gthread-posix.c:
81 * glib/gthread.c: Fix errors in the recently moved
82 time calculations. (#395203, Chris Wilson)
84 2007-01-10 Matthias Clasen <mclasen@redhat.com>
86 * configure.in: Actually link gthread against librt.
87 (#394641, Marco Pesenti Gritti)
89 2007-01-10 Matthias Clasen <mclasen@redhat.com>
91 * glib/gkeyfile.c (g_key_file_is_key_name): Grr, allow '*' in keys,
94 2007-01-09 Behdad Esfahbod <behdad@gnome.org>
96 * glib/gutils.h: Use a more optimized g_bit_storage() when gcc is
97 available. (#371670, Daniel Elstner)
99 2007-01-08 Matthias Clasen <mclasen@redhat.com>
101 * gthread/gthread-posix.c (g_thread_impl_init): Don't
102 use _SC_MONOTONIC_CLOCK unless USE_CLOCK_GETTIME is
105 2007-01-07 Matthias Clasen <mclasen@redhat.com>
107 Don't link glib against libpthread. (#393812)
109 * configure.in: Link gthread against librt, not glib itself.
112 * glib/gthread.c: Add a new thread function, gettime.
114 * glib/gtimer.c: Use gettime instead of directly working with
115 the various system interfaces.
117 * gthread/gthread-impl.c:
118 * gthread/gthread-posix.c:
119 * gthread/gthread-win32.c: Implement gettime.
121 2007-01-07 Matthias Clasen <mclasen@redhat.com>
123 * m4macros/glib-2.0.m4: Use PKG_PROG_PKG_CONFIG. (#392636,
126 2007-01-07 Tor Lillqvist <tml@novell.com>
128 * glib/giowin32.c: Handle GIOChannels for file descriptors
129 connected to the console separately. This would typically be the
130 fd 0, 1, or 2 (if not redirected) in a console application. For
131 such fds we don't need a separate thread, as console HANDLEs are
132 waitable objects. (#359202, Michiel de Hoon)
134 2007-01-04 Behdad Esfahbod <behdad@gnome.org>
136 * tests/bit-test.c (builtin_bit_nth_lsf1), (builtin_bit_nth_lsf2),
137 (builtin_bit_nth_msf): Fix tests on x86_64.
139 2007-01-03 Behdad Esfahbod <behdad@gnome.org>
141 * glib/goption.c (_g_unichar_get_width), (_g_utf8_strwidth),
142 (calculate_max_length), (print_entry), (print_help): Take zerowidth
143 and double-width chars into consideration when computing width of a
144 string. Also fix another bug in width computation. (#346955)
146 * glib/guniprop.c (g_unichar_iszerowidth): Fix typo. It was not
149 2007-01-03 Behdad Esfahbod <behdad@gnome.org>
153 * glib/guniprop.c: Add g_unichar_iszerowidth(). (#347645)
155 2007-01-03 Behdad Esfahbod <behdad@gnome.org>
157 * glib/gutils.h: Fix bug in g_bit_nth_lsf (#371631) and use
158 __builtin_clzl for g_bit_storage if available (#371670).
161 * tests/bit-test.c: New test, to test g_bit_* operations against
162 naive and builtin implementations.
164 2007-01-02 Behdad Esfahbod <behdad@gnome.org>
166 * configure.in: Avoid more warnings from running libtool --config.
169 2007-01-03 Michael Natterer <mitch@imendio.com>
171 * removed all .cvsignore files. SVN doesn't need them.
173 2007-01-02 Emmanuele Bassi <ebassi@gnome.org>
175 * glib/gbookmarkfile.c (expand_exec_line): Add support for
176 expanding the desktop entry spec variables %U (list of URIs)
177 and %F (list of filenames), so that using the command line
178 from the Exec and TryExec key of a desktop entry file works
181 2007-01-02 Matthias Clasen <mclasen@redhat.com>
183 * configure.in: Avoid warnings from running libtool --config.
184 (#391364, Loïc Minier)
186 2007-01-02 Matthias Clasen <mclasen@redhat.com>
188 * glib/gbookmarkfile.c (g_bookmark_file_get_app_info):
189 Return an error if the uri is bad. (#391370, Maciej Piechotka)
191 2007-01-02 Matthias Clasen <mclasen@redhat.com>
193 * glib/glib.symbols: Guard g_slice_debug_tree_statistics
194 by G_ENABLE_DEBUG. (#390940, Kazuki Iwamoto)
196 2007-01-02 Michael Natterer <mitch@imendio.com>
199 * Makefile.am: remove references to build/ until a proper decision
200 has been made what to do with it.
202 2007-01-01 Matthias Clasen <mclasen@redhat.com>
204 * glib-gettextize.in: Silence autoconf warnings about
205 datarootdir. (#391367, Loïc Minier)
207 2006-12-31 Matthias Clasen <mclasen@redhat.com>
209 * glib/gslice.c: Fix some C99isms. (#390913, Kazuki Iwamoto)
211 Fri Dec 29 13:28:07 2006 Tim Janik <timj@imendio.com>
213 * glib/gslice.c: turned detection of too late g_thread_init() calls
214 into a warning. this is a temporary work-around for some head-room
215 to fix affected programs, memory corruption still occours regardless.
217 2006-12-29 Matthias Clasen <mclasen@redhat.com>
219 * tests/gobject/Makefile.am:
220 * tests/gobject/dynamictype.c: New test for dynamic type
223 Thu Dec 28 21:14:45 2006 Tim Janik <timj@imendio.com>
225 * glib/gslice.c: removed pthread-dependant debugging bits, the code
226 was already converted to GMutex. this obsoletes Tor's recent fixups.
228 2006-12-28 Tor Lillqvist <tml@novell.com>
230 * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME)
231 * glib/gutils.c (get_windows_directory_root): : Use only the wide
232 character API here, too.
234 * glib/gslice.c: Make it compile on Win32 without pthreads: Use a
235 Win32 critical section instead.
237 * glib/gmessages.c (g_logv): On Win32, if we get a fatal error
238 message while being debugged we break into the debugger with
239 G_BREAKPOINT(). Don't call abort() if the user is foolhardy enough
240 to continue after the breakpoint. The user presumably knows what
241 he is doing and deserves what he gets. (#376645, Andreas Köhler)
243 Thu Dec 28 12:50:31 2006 Tim Janik <timj@imendio.com>
245 * glib/gslice.h, glib/gslice.c: implemented static debugging
246 hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
247 use abort() to exit in mem_error() to allow catching of these in gdb.
248 abort programs with a descriptive error message if g_thread_init() is
249 called after GSlice was in use. previously this just silently corrupted
252 * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte
253 pointer alignment on 64bit systems and request smaller slice sizes
256 * tests/slice-test.c: support '~' option flag to introduce slice
257 allocation/release corruption with a significant probability. this
258 allowes testing of G_SLICE=debug-blocks.
260 2006-12-27 Matthias Clasen <mclasen@redhat.com>
262 * glib/gconvert.[hc]:
267 * glib/gunicollate.c:
269 * tests/timeloop-basic.c:
270 Consistently use gsize rather than size_t. (#333310,
273 2006-12-27 Matthias Clasen <mclasen@redhat.com>
275 * configure.in: Use AC_CACHE_CHECK for the nl_langinfo
276 check. (#304517, Lőrinczy Zsigmond)
278 2006-12-27 Tor Lillqvist <tml@novell.com>
281 * glib/gwin32.c (get_package_directory_from_module)
282 (g_win32_get_package_installation_directory)
283 (g_win32_get_package_installation_subdirectory): Add const to
284 gchar* arguments. (#384523, Yevgen Muntyan)
286 2006-12-27 Ryan Lortie <desrt@desrt.ca>
288 * glib/ghash.c: cache the value of the hash function
289 in the GHashNode. this speeds up resizing the hash
290 table and it also allows a slight optimisation on
293 2006-12-27 Matthias Clasen <mclasen@redhat.com>
295 * glib/gunicollate.c (g_utf8_collate_key): Don't modify
296 the current locale. (#389300)
298 2006-12-26 Matthias Clasen <mclasen@redhat.com>
300 * glib/gutf8.c: Add hints for locale-dependent interfaces.
301 * glib/gconvert.c: Add hints for locale-dependent interfaces.
303 * glib/gconvert.c (g_get_filename_charsets): Improve
306 2006-12-26 Behdad Esfahbod <behdad@gnome.org>
308 * configure.in: Use libtool to determine shared library suffix.
311 2006-12-24 Matthias Clasen <mclasen@redhat.com>
313 * tests/run-collate-tests.sh:
314 * tests/unicode-collate.c: Silently skip tests if
315 we can't set LC_COLLATE to en_US. (#336438)
317 2006-12-19 Matthias Clasen <mclasen@redhat.com>
319 * glib/gkeyfile.c (g_key_file_is_key_name): Accept
320 '/', '+' and '.' in key names, since gnome-vfs uses
321 mime types as keys in some cache.
323 * tests/keyfile-test.c: Tests for the above.
325 2006-12-18 Matthias Clasen <mclasen@redhat.com>
327 * configure.in: Fix the broken poll test. (#387260,
330 * glib/gmain.c (child_watch_helper_thread): Readd a
331 return which was removed as dead code a while ago.
332 icc may consider it dead, but gcc doesn't like non-void
333 functions without a return... (#354707)
335 * tests/Makefile.am: Try a different fix for bug 346373.
337 2006-12-18 Matthias Clasen <mclasen@redhat.com>
341 * configure.in: Check for wcslen.
343 * glib/gnulib/vasnprintf.c: Handle wcslen missing.
345 2006-12-18 Matthias Clasen <mclasen@redhat.com>
347 * glib/gkeyfile.c: Accept '@' in locale names.
349 * glib/gkeyfile.c: Tighten up the check for allowed
350 key and group names. (#343191, Tommi Komulainen)
352 * tests/keyfile-test.c: Test handling of key and group names.
354 * tests/Makefile.am: Don't use $RANDOM if the shell doesn't
355 have it. (#346373, Thomas Klausner)
357 2006-12-17 Behdad Esfahbod <behdad@gnome.org>
359 * glib/gstring.c: Improve docs about string functions taking a
362 2006-12-17 Matthias Clasen <mclasen@redhat.com>
365 * glib/gutf8.c (_g_charset_get_aliases): Put the G_GNUC_INTERNAL
366 where gcc doesn't complain about it.
368 * glib/ghash.c: Make ref_count an int to avoid compiler
371 * configure.in: Use AC_LANG_SOURCE for the clock test.
373 * glib/gthreadpool.h:
374 * glib/gthreadpool.c (g_thread_pool_free): Don't use "wait"
375 as parameter name. (#379207, Christian Biere)
377 * glib/gspawn.c: Refer to g_child_watch_add() in addition
380 * glib/gstrfuncs.c (g_strndup, g_strnfill): Move docs
381 inline, and improve wording. (#372598, Behdad Esfahbod)
383 * glib/gspawn.c: Add some pointers to the gdk_spawn_
384 variants. (#338134, Federico Mena Quintero)
386 * configure.in: Make montonic clock test work again. Does
387 AC_COMPILE_IFELSE not get confdefs ? Also, move the clock
388 tests below the thread checks to fix #364663.
390 * tests/run-markup-tests.sh: Don't use diff -u (#380801,
393 * glib/gspawn.c: Fix the recent fdwalk()-related changes
394 to not break mapping-test. (#286838, Marco Barisione)
396 * glib/gstring.c (g_string_chunk_new): Don't shadow size.
397 (#386760, Kazuki IWAMOTO)
399 2006-12-16 Matthias Clasen <mclasen@redhat.com>
401 * glib/gstring.c: Move more documentation inline.
403 * configure.in: Use AC_COMPILE_IFELSE for the monotonic
404 clock test. (#362918, Han-Wen Nienhuys, Jeremy Lainé)
406 * glib/gstring.c: Move documentation inline.
408 2006-12-15 Matthias Clasen <mclasen@redhat.com>
410 * glib/giochannel.h: Make ref_count a gint to avoid
411 compiler warnings. (#321977, Andrew Paprocki)
413 * configure.in: On Solaris, set CFLAGS and LDFLAGS that
414 work both with Sun cc and gcc. (#315061, Lazlo Peter)
416 * glib/gspawn.c: Undefine READ_OK to fix the build on
417 old versions of Darwin. (#327800)
420 * glib/gstring.[hc] (g_string_chunk_clear): Add a function
421 for clearing a GStringChunk. (#364608, Matt Barnes)
423 * glib/guniprop.c (interval_compare): Avoid a compiler
426 * glib/gspawn.c (do_exec): Call set_cloexec() with
427 the right parameters. (#386252, Guillaume Desmottes)
429 2006-12-15 Matthias Clasen <mclasen@redhat.com>
431 Fix #357585, Padraig O'Briain.
433 * configure.in: Check for fdwalk.
435 * glib/gspawn.c (do_exec): Use fdwalk() to close all
438 * glib/gspawn.c (fdwalk): Fallback implementation of
441 2006-12-14 Matthias Clasen <mclasen@redhat.com>
443 * glib/gconvert.c (open_converter): Don't use alloca
444 and avoid allocating memory for small keys that are
445 already cached. (#172406, Morten Welinder)
447 * glib/gmain.c (g_child_watch_add_full): Improve the docs.
448 (#345569, Tim-Philipp Müller)
450 * glib/gkeyfile.c (g_key_file_add_group): If the group
451 is already there, make it current. (#385910, Joe Halliwell)
453 * tests/keyfile-test.c: Add a test for duplicate groups/keys.
455 2006-12-13 Matthias Clasen <mclasen@redhat.com>
457 * m4macros/glib-gettext.m4: Require AC_CANONICAL_HOST in
458 GLIB_WITH_NLS. (#385132, Laszlo Peter)
460 2006-12-12 Matthias Clasen <mclasen@redhat.com>
462 * configure.in: Add a check for broken poll on Mac OS X.
464 * glib/gmain.c: Use poll emulation on OS X. (#302672, Toby Peterson,
465 patch by Dave Vasilevsky)
467 2006-12-11 Matthias Clasen <mclasen@redhat.com>
469 * glib/gatomic.c: Don't use local numeric labels in
470 inline assembler on AIX. (#316434, Hans Rosenfeld)
472 * glib/gunicode.h (g_utf8_next_char): Cast to const char *,
473 not char *. (#138153, Nikolai Weibull)
475 Wed Nov 22 16:09:13 2006 Tim Janik <timj@gtk.org>
477 * glib/gmacros.h: added G_GNUC_MAY_ALIAS, suggested by Mathias
478 Hasselmann in bug #335341, fixes bug #335853.
480 2006-11-15 Matthias Clasen <mclasen@redhat.com>
482 * m4macros/glib-gettext.m4: Apply a patch from James
483 Henstridge for compatibility with automake 2.60 (#343825)
485 2006-11-14 Behdad Esfahbod <behdad@gnome.org>
487 * sanity_check: Replace bash-specific == with sh-understood =.
490 2006-11-05 Hans Breuer <hans@breuer.org>
492 * glib/makefile.msc.in : glib/ version not the gobject/
493 one I accidentially commited. Fixes bug #371074.
495 2006-11-05 Tor Lillqvist <tml@novell.com>
498 * gmodule/makefile.mingw.in
499 * glib/makefile.mingw.in
500 * gobject/makefile.mingw.in
501 * gthread/makefile.mingw.in
502 * tests/makefile.mingw.in: Remove from CVS. Haven't been
503 maintained or distributed for long.
505 2006-10-26 Pascal Terjan <pterjan@linuxfr.org>
507 * glib/libcharset/localcharset.c: Fix small leak on failed
508 realloc in _g_locale_get_charset_aliases (#338582)
510 2006-10-16 Behdad Esfahbod <behdad@gnome.org>
512 * glib/gnulib/Makefile.am: Add $(GLIB_DEBUG_FLAGS). (#362543,
515 2006-10-15 Sebastian Wilhelmi <seppi@seppi.de>
517 * tests/Makefile.am: Compile errorcheck-mutex-test with thread
518 libraries explicitly. (#74748, Javier Villavicencio)
520 2006-10-08 Matthias Clasen <mclasen@redhat.com>
522 Add a way to obtain Unicode script information. (#348348,
526 * glib/gunicode.h: Add GUnicodeScript enumeration and
527 g_unichar_get_script.
529 * glib/guniprop.c: Implement g_unichar_get_script.
531 * glib/gscripttable.h: Generated private header containing
534 * glib/gen-script-table.pl: Script to generate gscripttable.h.
536 * glib/Makefile.am: Update
538 2006-10-08 Matthias Clasen <mclasen@redhat.com>
540 * tests/run-markup-tests.sh: Small portability fix. (#347944,
543 2006-10-07 Tor Lillqvist <tml@novell.com>
545 * glib/gwin32.c (get_package_directory_from_module)
546 (g_win32_get_package_installation_directory): g_strdup the keys
547 that we are passed before adding them to the hash tables, to guard
548 against the caller freeing them. (#355955, Andreas Köhler)
550 2006-10-06 Matthias Clasen <mclasen@redhat.com>
552 * glib/gtimer.c: Fix a typo. (#359190)
554 2006-10-02 Behdad Esfahbod <behdad@gnome.org>
557 * gobject/Makefile.am:
558 Include pltcheck.sh in EXTRA_DIST, and remove redefinition of TESTS.
561 2006-10-01 Matthias Clasen <mclasen@redhat.com>
563 * glib/gtimer.c (g_usleep): Use nsleep to implement
564 g_usleep on AIX. (#321974, Andrew Paprocki)
566 * configure.in: Check for nsleep
568 * glib/gmain.c: Fix typos in doc comments.
569 (#358421, Tom Tromey)
571 2006-09-30 Matthias Clasen <mclasen@redhat.com>
573 * glib/pltcheck.sh: A script to check PLT entries.
574 * glib/Makefile.am (TESTS): Run pltcheck.sh
576 * glib/*: Fix includes to correct some issues with
577 PLT entries. (#354522, Behdad Esfahbod)
579 2006-09-17 Hans Breuer <hans@breuer.org>
581 * glib/makefile.msc.in gobject/makefile.msc.in : better filtering
582 of G_GNUC_* stuff when generating .def files. Now also works with
583 newer (less tolerant) linkers, e.g. from vc2500e
585 2006-09-10 Matthias Clasen <mclasen@redhat.com>
587 * glib/gbacktrace.c: Assume string.h is available.
588 (#354523, Behdad Esfahbod)
590 * configure.in: Bump version to 2.13.0
593 * glib/gmain.[hc]: Add functions to create approximate
594 timeouts. (#353942, Arjan van de Ven)
596 * glib/gstdio.c (g_rename): Initialize save_errno.
597 (#355206, Mike Edenfield)
599 2006-09-03 Matthias Clasen <mclasen@redhat.com>
601 * glib/gerror.c: Allocate GErrors using the slice allocator.
602 (#354054, Matt Barnes)
604 2006-09-02 Matthias Clasen <mclasen@redhat.com>
606 * glib/gtimer.c: Forgotten HAVE_CLOCK_GETTIME.
608 2006-09-02 Tor Lillqvist <tml@novell.com>
610 * glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
611 declarations and code) in Win32 ifdef branch. (#353903, Mike
614 2006-09-01 Abel Cheung <abel@oaka.org>
616 * configure.in: Added 'dz' 'hy' to ALL_LINGUAS.
618 2006-09-01 Matthias Clasen <mclasen@redhat.com>
620 * configure.in: Check for CLOCK_MONOTONIC.
622 * glib/gtimer.c: Only use clock_gettime if we
623 have a monotonic clock.
625 2006-08-31 Matthias Clasen <mclasen@redhat.com>
627 * configure.in: Add missing includes to a few test
628 programs. (#353580, Chris Wilson)
630 2006-08-30 Matthias Clasen <mclasen@redhat.com>
632 * glib/gmarkup.c (g_markup_vprintf_escaped): Don't call
633 va_end on caller-provided va_args. (#353584, Chris Wilson)
635 2006-08-29 Tor Lillqvist <tml@novell.com>
637 Remove support for Windows 9x/ME, as will be done also in Pango
638 and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
639 it's pretty pointless to keep the Win9x code in here either. If
640 somebody is interested, the code can always be found in older GLib
641 versions, and in CVS.
645 * glib/gspawn-win32-helper.c
646 * glib/gspawn-win32.c
650 * glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
651 G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
652 branches, and any variables or static functions used only by the
655 * glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
658 2006-08-27 Matthias Clasen <mclasen@redhat.com>
660 * configure.in: Fix pthread compiler flag detection.
662 * glib/gtimer.c: Use Posix monotonic clocks instead of
663 gettimeofday when available. (#336114, William Jon McCann)
665 2006-08-26 Matthias Clasen <mclasen@redhat.com>
668 * glib/gscanner.c: Fix some typos. (#351741, Kjartan Maraas)
670 2006-08-25 Matthias Clasen <mclasen@redhat.com>
672 * configure.in: Fix the pthread compiler flag detection.
675 * glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
676 from gconvert.c, move it to gutf8.c, and export it privately.
678 * glib/gconvert.c (g_filename_display_name): Adjust callers.
680 * glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
681 places to ensure error messages are valid UTF-8. (#351853,
684 2006-08-22 Matthias Clasen <mclasen@redhat.com>