|
1 | | -# glib |
2 | | -Build action for glib libraries |
| 1 | +# GLib |
| 2 | + |
| 3 | +GLib is the low-level core library that forms the basis for projects such |
| 4 | +as GTK and GNOME. It provides data structure handling for C, portability |
| 5 | +wrappers, and interfaces for such runtime functionality as an event loop, |
| 6 | +threads, dynamic loading, and an object system. |
| 7 | + |
| 8 | +The official download locations are: |
| 9 | +<https://download.gnome.org/sources/glib> |
| 10 | + |
| 11 | +The official web site is: |
| 12 | +<https://www.gtk.org/> |
| 13 | + |
| 14 | +## Installation |
| 15 | + |
| 16 | +See the file ‘[INSTALL.md](INSTALL.md)’. There is |
| 17 | +[separate and more in-depth documentation](./docs/win32-build.md) for building |
| 18 | +GLib on Windows. |
| 19 | + |
| 20 | +## Supported versions |
| 21 | + |
| 22 | +Upstream GLib only supports the most recent stable release series, the previous |
| 23 | +stable release series, and the current development release series. All |
| 24 | +older versions are not supported upstream and may contain bugs, some of which |
| 25 | +may be exploitable security vulnerabilities. |
| 26 | + |
| 27 | +See [SECURITY.md](SECURITY.md) for more details. |
| 28 | + |
| 29 | +## Documentation |
| 30 | + |
| 31 | +API documentation is available online for GLib for the: |
| 32 | +* [GLib](https://docs.gtk.org/glib/) |
| 33 | +* [GObject](https://docs.gtk.org/gobject/) |
| 34 | +* [GModule](https://docs.gtk.org/gmodule/) |
| 35 | +* [GIO](https://docs.gtk.org/gio/) |
| 36 | + |
| 37 | +## Discussion |
| 38 | + |
| 39 | +If you have a question about how to use GLib, seek help on [GNOME’s Discourse |
| 40 | +instance](https://discourse.gnome.org/tags/glib). Alternatively, ask a question |
| 41 | +on [StackOverflow and tag it `glib`](https://stackoverflow.com/questions/tagged/glib). |
| 42 | + |
| 43 | +## Reporting bugs |
| 44 | + |
| 45 | +Bugs should be [reported to the GNOME issue tracking system](https://gitlab.gnome.org/GNOME/glib/issues/new). |
| 46 | +You will need to create an account for yourself. You may also submit bugs by |
| 47 | +e-mail (without an account) by e-mailing <[email protected]>, |
| 48 | +but this will give you a degraded experience. |
| 49 | + |
| 50 | +Bugs are for reporting problems in GLib itself, not for asking questions about |
| 51 | +how to use it. To ask questions, use one of our [discussion forums](#discussion). |
| 52 | + |
| 53 | +In bug reports please include: |
| 54 | + |
| 55 | +* Information about your system. For instance: |
| 56 | + * What operating system and version |
| 57 | + * For Linux, what version of the C library |
| 58 | + * And anything else you think is relevant. |
| 59 | +* How to reproduce the bug. |
| 60 | + * If you can reproduce it with one of the test programs that are built |
| 61 | + in the `tests/` subdirectory, that will be most convenient. Otherwise, |
| 62 | + please include a short test program that exhibits the behavior. |
| 63 | + As a last resort, you can also provide a pointer to a larger piece |
| 64 | + of software that can be downloaded. |
| 65 | +* If the bug was a crash, the exact text that was printed out |
| 66 | + when the crash occurred. |
| 67 | +* Further information such as stack traces may be useful, but |
| 68 | + is not necessary. |
| 69 | + |
| 70 | +## Contributing to GLib |
| 71 | + |
| 72 | +Please follow the [contribution guide](./CONTRIBUTING.md) to know how to |
| 73 | +start contributing to GLib. |
| 74 | + |
| 75 | +Patches should be [submitted as merge requests](https://gitlab.gnome.org/GNOME/glib/-/merge_requests/new) |
| 76 | +to gitlab.gnome.org. Note that you will need to be logged in to the site to use |
| 77 | +this page. If the patch fixes an existing issue, please refer to the |
| 78 | +issue in your commit message with the following notation (for issue 123): |
| 79 | +``` |
| 80 | +Closes: #123 |
| 81 | +``` |
| 82 | + |
| 83 | +Otherwise, create a new merge request that introduces the change. Filing a |
| 84 | +separate issue is not required. |
0 commit comments