1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
|
Version 0.5.10
~~~~~~~~~~~~~~
Released: 2016-02-26
New Features:
- Add AS_APP_KIND_OS_UPGRADE and AS_APP_KIND_OS_UPDATE (Richard Hughes)
- Add AS_APP_KIND_SHELL_EXTENSION (Richard Hughes)
- Add AsAppQuirk (Richard Hughes)
- Add a 'split-appstream' command to appstream-util (Richard Hughes)
- Add support for getting the SDK and runtime from the bundle (Richard Hughes)
- Support loading XML files using as_store_from_bytes() (Richard Hughes)
Bugfixes:
- Add an application prefix to the ID for certain install scopes (Richard Hughes)
- Add a warning when validating in strict mode with invalid tags (Richard Hughes)
- Do not tokenize mimetypes (Richard Hughes)
- Improve the application search tokenizing and filtering (Richard Hughes)
- Load AppStream stores in a predictable order (Richard Hughes)
- Look in the correct icon directory for yaml files (Richard Hughes)
- Properly validate AppStream files with local or remote icons (Richard Hughes)
- Return results from 'appstream-util search' in relevance order (Richard Hughes)
Version 0.5.9
~~~~~~~~~~~~~
Released: 2016-02-12
Bugfixes:
- Accept FSFAP as a valid metadata license (Richard Hughes)
- Add missing G_BEGIN_DECLS in libappstream-glib/as-tag.h (Andrea Azzarone)
- Fix a validation error for metainfo files with descriptions (Richard Hughes)
- Fix dates in NEWS - It's 2016! (Robert Ancell)
- Pick up newly added appinfo dirs for xdg-app remotes (Alexander Larsson)
- Update the SPDX license list (Richard Hughes)
Version 0.5.8
~~~~~~~~~~~~~
Released: 2016-02-02
New Features:
- Add a flag for skipping invalid AppStream files (Richard Hughes)
- Add a modify command to appstream-util (Richard Hughes)
- Add support for per-user and system-wide xdg-app installed stores (Richard Hughes)
- Add support for the GENERIC component kind (Richard Hughes)
- Allow setting state on AsRelease objects (Richard Hughes)
- Support <translation> tags in AppData files (Richard Hughes)
Bugfixes:
- Escape data before writing to an HTML file (Richard Hughes)
- Ignore temp and hidden files in AsMonitor (Richard Hughes)
- Move the kudo and provides autodetection to libappstream-glib (Richard Hughes)
- Only load supported icon kinds when using appstream-compose (Richard Hughes)
- Reject an invalid project group when parsing (Richard Hughes)
- Remove support for Ubuntu app-install data (Richard Hughes)
- Show the source of the 'appstream-util check-root' failure (Richard Hughes)
- Support multi-line copyright statements (Richard Hughes)
- Support stock dep11 icons (Matthias Klumpp)
- Support the QT translation system (Richard Hughes)
- Use predictable sorting when outputting <provides> (Richard Hughes)
- Use the project_group heuristics when parsing AppData files (Richard Hughes)
Version 0.5.7
~~~~~~~~~~~~~
Released: 2016-01-22
Notes:
- We've removed the ostree support and added a new appstream-compose command
to generate the AppStream metadata at xdg-app application build time.
New Features:
- Add appstream-compose command line tool (Alexander Larsson)
- Add as_image_load_filename_full() (Richard Hughes)
- Move the blacklisted application list to the front-end client (Richard Hughes)
- Move the gettext parsing to libappstream-glib (Richard Hughes)
- Support date=iso8601 attributes in <release> markup (Richard Hughes)
Bugfixes:
- Allow disabling font support with --disable-fonts (Richard Hughes)
- Detect web-apps which are added as .desktop files (Richard Hughes)
- Make the check for screenshot equality more robust (Richard Hughes)
- Only build the test firmware files when using --enable-firmware (Richard Hughes)
- Remove all traces of ostree (Alexander Larsson)
- Remove the GIR, GStreamer, GResource, nm and KDE-specific plugins (Richard Hughes)
Version 0.5.6
~~~~~~~~~~~~~
Released: 2016-01-15
New Features:
- Add the runtime ID kind (Richard Hughes)
- Allow dumping inf files using appstream-util (Richard Hughes)
- Check name uniqueness when validating AppStream data (Richard Hughes)
- Install gettext ITS rules (Daiki Ueno)
Bugfixes:
- Accept various 'or later' metadata content licenses (Richard Hughes)
- Allow specifying a particular ostree arch only (Alexander Larsson)
- Always blacklist desktop files for uninstalling software (Richard Hughes)
- Assume a release value of '0' when unset (Richard Hughes)
- Automatically add missing .inf types as required (Richard Hughes)
- Check the project_group when validating (Richard Hughes)
- Cull the application blacklist now we depend on AppData files (Richard Hughes)
- Fix AppStream generation when using duplicate .deb packages (Richard Hughes)
- Fix things up for xdg-app use (Alexander Larsson)
- Prefer stock icons when using as_app_get_icon_default() (Richard Hughes)
- Set a validation failure for files using <updatecontact> (Richard Hughes)
Version 0.5.5
~~~~~~~~~~~~~
Released: 2015-12-16
New Features:
- Add a AS_APP_STATE_UPDATABLE_LIVE constant so we can support live updates (Richard Hughes)
- Add as_utils_license_to_spdx() (Richard Hughes)
Bugfixes:
- Add the package name as another application search token (Richard Hughes)
- Fix a crash when tokenizing a NULL string (Richard Hughes)
- Log when we auto-add kudos or keywords (Richard Hughes)
- Only use the package license when not provided by the AppData file (Richard Hughes)
Version 0.5.4
~~~~~~~~~~~~~
Released: 2015-11-18
New Features:
- Add as_utils_version_from_uint16() (Richard Hughes)
Bugfixes:
- Generate GUID values according to RFC4122 (Richard Hughes)
Version 0.5.3
~~~~~~~~~~~~~
Released: 2015-11-05
Bugfixes:
- Return the correct error when the desktop file has no group (Richard Hughes)
- Strip Win32 and Linux paths when decompressing firmware (Richard Hughes)
Version 0.5.2
~~~~~~~~~~~~~
Released: 2015-10-27
New Features:
- Add an --enable-profile option to appstream-util (Richard Hughes)
- Add as_markup_validate() to check descriptions (Richard Hughes)
- Add support for AppStream <size> metadata (Richard Hughes)
- Add the ability to attach blobs of data to AsRelease objects (Richard Hughes)
- Add the ability to parse .cab archives as AppStream stores (Richard Hughes)
- Remove the long-obsolete appdata-validate tool (Richard Hughes)
Bugfixes:
- Accept a '0x' hexidecimal prefix when parsing a version (Richard Hughes)
- Adapt to DEP11 spec change (Matthias Klumpp)
- Add AsProfile for speed profiling (Richard Hughes)
- Allow as_markup_convert() to ignore errors (Richard Hughes)
- Always escape AppStream descriptions when doing passthrough (Richard Hughes)
- Do not attempt to parse the version in as_release_set_version() (Richard Hughes)
- Do not ever store the KDE x-test locale data (Richard Hughes)
- Do not fail to install firmware if DriverVer is not set (Richard Hughes)
- Do not overwrite the AppData URL with the one from the package (Richard Hughes)
- Do not parse ISO dates as uint32 version numbers (Richard Hughes)
- Do not write a checksum 'type' for unknown checksum kinds (Richard Hughes)
- Fix a typo in command name (Dmitry Shachnev)
- Fix crash in validator when processing '<li></li>' (Richard Hughes)
- Monitor /usr/share/applications for apps without AppData when using watch flags (Richard Hughes)
- Only accept UNIX paths for files in cab files (Richard Hughes)
- Require AppData files to be present in the AppStream metadata (Richard Hughes)
- Simplify veto messages for missing <name> and <summary> (Kalev Lember)
- Support super-HiDPI icons like shipped in Hedgewars (Richard Hughes)
- Try harder to deal with icons that have extension or full path listed (Kalev Lember)
- Use a sensible warning when processing desktop files with NoDisplay=true (Richard Hughes)
- Use as_utils_vercmp() to be correctly check versions for equality (Richard Hughes)
- Use a wildcard in the self tests to ignore GCab-generated hash differences (Richard Hughes)
- Use g_set_object() to fix potential crash when adding pixbufs (Richard Hughes)
Version 0.5.1
~~~~~~~~~~~~~
Released: 2015-09-15
Notes:
- This raises the GLib required version to 2.45.8 and libsoup to 2.51.92
New Features:
- Add support for release urgency (Richard Hughes)
Bugfixes:
- Add a few applications that have changed desktop ID (Richard Hughes)
- Avoid using PATH_MAX (Pino Toscano)
- Do not blacklist the 'desktop' token (Richard Hughes)
- Do not fail to validate firmware in AppStream with no screenshots (Richard Hughes)
- Don't reallocate malloc'd memory with g_malloc (Kalev Lember)
- Don't show mangled version numbers as negatives (Richard Hughes)
- Ignore empty AppStream XML files (Richard Hughes)
- Support SPDX IDs with the LicenseRef prefix (Richard Hughes)
- Support the SPDX 'NONE' and 'NOASSERTION' keywords (Richard Hughes)
- Use GLib's cleanup functions instead of libgsystem's (Kalev Lember, Richard Hughes)
- Port to G_DECLARE_DERIVABLE_TYPE macro (Kalev Lember)
Version 0.5.0
~~~~~~~~~~~~~
Released: 2015-08-12
Notes:
- Remove some deprecated API which bumps soname (Richard Hughes)
- Drop the unused _len arguments on many functions (Richard Hughes)
New Features:
- Add AsChecksum (Richard Hughes)
- Add as_release_vercmp() (Richard Hughes)
- Add support for the flashed firmware provide kind (Richard Hughes)
- Add two functions from fwupd for checking GUID strings (Richard Hughes)
Bugfixes:
- Emit the AsStore::changed signal if files or directories change (Richard Hughes)
- Find the application in a store by the provide value (Richard Hughes)
- Make the DriverVer in the .inf file optional (Richard Hughes)
- Only add the HiDPI kudo for desktop applications using stock icons (Richard Hughes)
- Remove support for AppStream 0.8 and lower (Richard Hughes)
- Show a better error message when there's not enough text (Kalev Lember)
Version 0.4.1
~~~~~~~~~~~~~
Released: 2015-07-20
New Features:
- Add a 'compare' command to appstream-util (Richard Hughes)
- Add a 'mirror-local-firmware' command to appstream-util (Richard Hughes)
- Add a flag to relax the AppData Category=Settings requirement (Richard Hughes)
- Add a flag to use non-optimal data sources when building metadata (Richard Hughes)
- Add am 'incorporate' command to appstream-util (Richard Hughes)
- Add two flags to veto-ignore to relax the requirements for metadata (Richard Hughes)
Bugfixes:
- Be less strict when loading incorrect AppData files (Richard Hughes)
- Do not duplicate <location> tags within a release (Richard Hughes)
- Do not expect the INF ClassGuid to be the ESRT GUID (Richard Hughes)
- Don't crash when parsing a <release> with no description (Richard Hughes)
- Fix a potential crash spotted by clang (Richard Hughes)
- Fix autogen with latest Intltool (Matthias Klumpp)
- Ignore the prefix when loading system-wide AppStream information (Richard Hughes)
- Include <pkgname> when writing the ignored metadata (Richard Hughes)
- Only write the release timestamp if non-zero (Richard Hughes)
- Remove the AppData veto when incorporating metadata (Richard Hughes)
- Search harder when using AS_ICON_LOAD_FLAG_SEARCH_SIZE (Richard Hughes)
- Sort multiple <icon> entries by name (Richard Hughes)
- Update the SPDX licence list to v2.0 (Richard Hughes)
- When building metadata with the use-fallback flag accept legacy icon names (Richard Hughes)
Version 0.4.0
~~~~~~~~~~~~~
Released: 2015-05-26
Notes:
- Remove extra-appstream support from the builder (Richard Hughes)
- Remove all networking support when building metadata (Richard Hughes)
- Remove the batch output option from the builder (Richard Hughes)
- Remove the extra screenshots and appdata options from the builder (Richard Hughes)
New Features:
- Add a mirror-screenshots command to appstream-util (Richard Hughes)
- Detect recolorable symbolic icons (Richard Hughes)
Bugfixes:
- Add text icons and sample text for some languages (Parag Nemade)
- Allow using unwrapped description markup (Richard Hughes)
- Check for duplicate screenshots when adding fonts (Richard Hughes)
- Do not use the cache location when using install-origin with a DESTDIR (Richard Hughes)
- Fix a crash for an invalid AppData file (Richard Hughes)
- Fix exo-web-browser blacklist entry (Kalev Lember)
- Link libasb_plugin_font.la with GTK3 (Dominique Leuenberger)
- Remove overzealous blacklisting entry (Richard Hughes)
- Version the builder plugin location (Richard Hughes)
Version 0.3.6
~~~~~~~~~~~~~
Released: 2015-03-30
New Features:
- Add a 'replace-screenshots' command to appstream-util (Richard Hughes)
- Add --batch-output to be able to disable the panel (Richard Hughes)
- Make the AppStream builder support optional (Richard Hughes)
- Now gcab is a hard requirement (Marc-Andre Lureau, Alberto Ruiz)
- Put all the screenshots in a file (Richard Hughes)
- Use the latest released version for unspecified (Richard Hughes)
- Use the upstream screenshot when we are using --no-net (Richard Hughes)
Bugfixes:
- Add the source-only tags when outputting AppData files (Richard Hughes)
- Allow uninstalling AppStream files from /var/cache (Richard Hughes)
- Also subsume application licenses (Richard Hughes)
- Always upscale screenshots if they are too small (Kalev Lember)
- Assume the INF DriverVer is UTC (Richard Hughes)
- Do not fail due to style warnings when using relaxed validation (Richard Hughes)
- Do not trust the result of FcConfigAppFontAddFile() (Richard Hughes)
- Remove the gtk3 dep from libappstream-glib (Richard Hughes)
- Teach the builder how to write other archive formats (Richard Hughes)
- Update the checksums for the gcab-generated firmware (Richard Hughes)
- Use the correct image URL for HiDPI screenshots (Richard Hughes)
Version 0.3.5
~~~~~~~~~~~~~
Released: 2015-03-11
New Features:
- Add new API required for firmware support (Richard Hughes)
- Add new API required for OSTree and xdg-app support (Richard Hughes)
- Add 'news-to-appdata' and 'appdata-to-news' cmds to appstream-util (Richard Hughes)
- Support all of the yet-unreleased AppStream 0.9 spec (Richard Hughes)
Bugfixes:
- Add releases from the upstream AppData files (Richard Hughes)
- Allow short descriptions when validating <description> in releases (Richard Hughes)
- Correctly load descriptions from <releases> in AppData files (Richard Hughes)
- Fix a builder crash where a package depends on itself (Richard Hughes)
- Fix a crash when more than one thread tries to ensure the same package (Richard Hughes)
- Fix DSO Linking error when built with --as-needed (Tim Lunn)
- Make the failed AppStream metadata optional (Richard Hughes)
- Make the icon tarball optional (Richard Hughes)
- Relax validation checks to allow empty release sections (Richard Hughes)
- Return the correct exit code from appstream-builder (Richard Hughes)
Version 0.3.4
~~~~~~~~~~~~~
Released: 2015-01-17
New Features:
- Add an --origin option to appstream-builder (Richard Hughes)
- Add as_app_get_search_tokens() (Richard Hughes)
- Add show-search-tokens subcommand to appstream-util (Richard Hughes)
- Add the matrix-html subcommand to appstream-util (Richard Hughes)
- Add the VCS information to the AppStream metadata (Richard Hughes)
Bugfixes:
- Add more applications to the blacklist (Richard Hughes, Igor Gnatenko)
- Allow specifying --packages-dir multiple times (Richard Hughes)
- Alow setting the cachedir different from the outputdir (Richard Hughes)
- Always return errors from the correct domain when parsing broken AppData files (Richard Hughes)
- Assume <image>foo</image> is a source image kind for AppData files (Richard Hughes)
- Assume that stock icons are available in HiDPI sizes (Richard Hughes)
- Blacklist the 40 most common search tokens (Richard Hughes)
- Check if the search entries are valid before searching (Richard Hughes)
- Check screenshots are a reasonable size (Richard Hughes)
- Do not absorb metainfo files for package deps (Richard Hughes)
- Do not blacklist applications with broken AppData files (Richard Hughes)
- Do not veto applications with NoDisplay=false (Richard Hughes)
- Fall back to the dumb tokenizer for keywords with special chars (Richard Hughes)
- Handle other-endian MO files (Andreas Schwab)
- Move as_utils_install_filename() into libappstream-glib (Richard Hughes)
- Output the full filename for local icons (Richard Hughes)
- Preserve the URL for remote icon types and filename for local icons (Richard Hughes)
- Require AppData for Xvfb-using applications (Richard Hughes)
- Set an error if an XML file contains font markup (Richard Hughes)
- Show the offending text when validation fails (Richard Hughes)
Version 0.3.3
~~~~~~~~~~~~~
Released: 2014-11-24
New Features:
- Allow filtering addons in the status html pages (Richard Hughes)
Bugfixes:
- Detect missing parents in the old metadata (Richard Hughes)
- Do not fail to load all the desktop files if one is bad (Richard Hughes)
- Improve appdata-xml.m4 deprecation notice (David King)
- Use <update_contact> from the AppStream specification (Richard Hughes)
- When using install-origin install into /var/cache (Richard Hughes)
Version 0.3.2
~~~~~~~~~~~~~
Released: 2014-11-04
New Features:
- Add --veto-ignore to appstream-builder (Richard Hughes)
- Add BLUR and SHARPEN values for AsImageSaveFlags (Richard Hughes)
- Add a simple 'search' command to appstream-util (Richard Hughes)
- Add as_app_set_origin() (Richard Hughes)
Bugfixes:
- Add some more valid metadata licenses (Richard Hughes)
- Do not composite an app with its duplicate (Richard Hughes)
- Do not create a hardlink when the target does not exist (Richard Hughes)
- Do not generate metadata with an icon prefix (Richard Hughes)
- Fix FTBFS on GNU/Hurd (Matthias Klumpp)
- Fix extraction of hardlinks (Richard Hughes)
- Obsolete the appdata-tools package (Richard Hughes)
- Save the screenshots as soon as possible (Richard Hughes)
- Show the kudo stats on the status page (Richard Hughes)
- Support HiDPI YAML icons (Richard Hughes)
- Support getting the origin from .yml files (Richard Hughes)
Version 0.3.1
~~~~~~~~~~~~~
Released: 2014-10-21
Notes:
- This branch is still unstable and should not be used in stable distributions.
- This release allows appstream-builer to parse Alpm packages for Arch Linux.
- HiDPI support is now working well for icons and screenshots.
New Features:
- Add a kudo for a HiDPI icon (Richard Hughes)
- Add an --enable-hidpi argument to appstream-builder (Richard Hughes)
- Add AS_APP_VALIDATE_FLAG_ALL_APPS (Richard Hughes)
- Add asb_app_set_hidpi_enabled() (Richard Hughes)
- Add asb_context_get_min_icon_size() (Richard Hughes)
- Add asb_context_set_embedded_icons() (Richard Hughes)
- Add AsIcon as a new abstract icon object (Richard Hughes)
- Add as_icon_convert_to_kind() (Richard Hughes)
- Add AS_ICON_KIND_EMBEDDED and AS_ICON_KIND_LOCAL (Richard Hughes)
- Add as_node_add_attribute_as_int() (Richard Hughes)
- Add as_screenshot_set_priority() (Richard Hughes)
- Add as_store_convert_icons() (Richard Hughes)
- Add as_utils_find_icon_filename_full() for HiDPI support (Richard Hughes)
- Add as_utils_get_string_overlap() (Richard Hughes)
- Alpm backend for appstream-builder (Fabien Bourigault)
- Support filtering by metadata in status-csv (Richard Hughes)
Bugfixes:
- Add more applications to the blacklist (Richard Hughes)
- Allow application with NoDisplay=true and an AppData file (Richard Hughes)
- Allow AppStream files to be upgraded using appstream-util (Richard Hughes)
- Correctly write symlinks when extracting packages (Richard Hughes)
- Do not allow applications to extend themselves (Richard Hughes)
- Do not crash when doing as_tag_from_string(NULL) (Richard Hughes)
- Do not leak applications when building if more than one plugin returns results (Richard Hughes)
- Do not subsume vetoed fonts into the parent component (Richard Hughes)
- Do not write provides with an unknown kind (Richard Hughes)
- Flush the package log again after the metadata write (Richard Hughes)
- Ignore translation for non-translatable tags (Richard Hughes)
- Include the width and height in the <icon> tag (Richard Hughes)
- Install AppStream files with correct permissions (Richard Hughes)
- Log when applications are automatically composited (Richard Hughes)
- Manually search for HiDPI icons if the application only has one listed icon (Richard Hughes)
- Monitor the XML and icons path for changes (Richard Hughes)
- Never allow more than one default screenshot (Richard Hughes)
- Never return a smaller HiDPI icon than a LoDPI icon (Richard Hughes)
- Only detect missing data after the application have been merged (Richard Hughes)
- Only guess a project as GNOME if it uses the GNOME bugzilla (Richard Hughes)
- Only process fonts with valid metainfo files (Richard Hughes)
- Relax validation requirements for font metainfo files (Richard Hughes)
- Respect AS_NODE_FROM_XML_FLAG_LITERAL_TEXT when dealing with comments (Richard Hughes)
- Sort the screenshots with a priority value (Richard Hughes)
- Support multiple XML comments per tag (Richard Hughes)
- Support upgrading more than one AppData file at a time (Richard Hughes)
- When validating AppStream files also validate the application objects (Richard Hughes)
- Write the application XML after all the vetos have been added (Richard Hughes)
Version 0.3.0
~~~~~~~~~~~~~
Released: 2014-09-01
Notes:
- This release breaks API and bumps the soname. See docs/PORTING.txt for more
details about what was changed.
New Features:
- Add a new kudo for high contrast icons (Richard Hughes)
- Add as_app_add_veto() (Richard Hughes)
- Add AS_APP_PARSE_FLAG_ALLOW_VETO (Richard Hughes)
- Add asb_utils_ensure_exists() (Richard Hughes)
- Add a self test framework for libappstream-builder (Richard Hughes)
- Add as_store_add_metadata_index() (Richard Hughes)
- Add AS_STORE_LOAD_FLAG_ALLOW_VETO (Richard Hughes)
- Add as_store_remove_all() (Richard Hughes)
- Add as_store_remove_app_by_id() (Richard Hughes)
- Add as_store_set_builder_id() (Richard Hughes)
- Add as_utils_find_icon_filename() (Richard Hughes)
- Add as_utils_is_spdx_license() (Richard Hughes)
- Add as_utils_spdx_license_detokenize() (Richard Hughes)
- Add check-root to appstream-util (Richard Hughes)
- Add some validation rules for metainfo files (Richard Hughes)
- Allow desktop->addon demotion with an AppData file (Richard Hughes)
- Allow filtering other kinds of components in status-csv (Richard Hughes)
- Allow translated keywords (Richard Hughes)
- Rename as_app_get_id_full() to as_app_get_id() (Richard Hughes)
- Rename as_app_get_id() to as_app_get_id_filename() (Richard Hughes)
Bugfixes:
- Add a veto if a .desktop file has NoDisplay=true (Richard Hughes)
- Add dummy failed applications (Richard Hughes)
- Add more things to the blacklist that are not applications (Richard Hughes)
- A keyword search match is better than the project name (Richard Hughes)
- Allow different source roots to define addons (Richard Hughes)
- Check the locale more carefully (Richard Hughes)
- Conform to the actual SPDX 2.0 license expression syntax (Richard Hughes)
- Do not require sentence case when validating with relaxed settings (Richard Hughes)
- Do not try to download screenshots when run with --nonet (Richard Hughes)
- Do not write <pkgname> into the ignore metadata (Richard Hughes)
- Don't add localized keywords that already exist in C (Richard Hughes)
- Ignore AppData screenshots with xml:lang attributes (Richard Hughes)
- Link client/appstream-util against gdk-pixbuf (William Hua)
- Make validate,install,dump and convert to accept a *.yml (Igor Gnatenko)
- Metadata licenses like 'CC0 and CC-BY-3.0' are content licenses (Richard Hughes)
- Never add duplicate <extends> tags (Richard Hughes)
- Never add empty keywords (Richard Hughes)
- Only get the package data when required (Richard Hughes)
- Rework as_utils_spdx_license_tokenize() to be more efficient (Richard Hughes)
- Store vetos in the XML itself (Richard Hughes)
- Support keywords separated by comma (Richard Hughes)
- Turn of sig checking for rpm packages (Richard Hughes)
- Update the SPDX license list to v1.20 (Richard Hughes)
- Use libyaml to read DEP-11 metadata (Richard Hughes)
Version 0.2.4
~~~~~~~~~~~~~
Released: 2014-08-05
New Features:
- Add AS_PROVIDE_KIND_DBUS_SYSTEM (Richard Hughes)
- Add an 'install-origin' command to appstream-util (Richard Hughes)
- Add an installed tests to validate appdata (Matthias Clasen)
- Add as_store_set_destdir() so we can use a different root (Richard Hughes)
- Add as_store_validate() (Richard Hughes)
- Add asb_app_set_veto_description() (Richard Hughes)
- Add support for <source_pkgname> which will be in AppStream 0.8 (Richard Hughes)
- Add the <dbus> provide for applications automatically (Richard Hughes)
Bugfixes:
- Add a plugin to detect new-style 'gtk/menus.ui' AppMenu support (Richard Hughes)
- Avoid using rsync's -a parameter (Kalev Lember)
- Detect any addons with missing parents (Richard Hughes)
- Do not load applications with NoDisplay=true when loading local (Richard Hughes)
- Do not pad the compressed AppStream metadata with NUL bytes (Richard Hughes)
- Do not treat app-install metadata as installed (Richard Hughes)
- Markup errors should not be fatal when assembling a store (Richard Hughes)
- Only add registered projects and categories to the metadata (Richard Hughes)
- Only link to apps.fedoraproject.org when processing Fedora metadata (Richard Hughes)
- Show the time remaining when building metadata (Richard Hughes)
- Show what application addons extend in status.html (Richard Hughes)
- Validate for a sentence case start in <p>, <li> and <name> tags (Richard Hughes)
Version 0.2.3
~~~~~~~~~~~~~
Released: 2014-07-17
New Features:
- Add some simple filtering in the status.html page (Richard Hughes)
- Record if distro metadata and screenshots are being used (Richard Hughes)
- Show the builder progress in a ncurses-style panel (Richard Hughes)
- Support pre-decompressed RPMs (Richard Hughes)
Bugfixes:
- Add oxygen-icon-theme when an application depends on kde-runtime (Richard Hughes)
- Be more careful with untrusted XML data (Richard Hughes)
- Do not allow duplicates to be added when using as_app_add_kudo_kind() (Richard Hughes)
- Do not fail to build packages with invalid KDE service files (Richard Hughes)
- Do not warn if the AppData file duplicates the .desktop value (Richard Hughes)
- Show any package duplicates when generating metadata (Richard Hughes)
- Show apps with missing icons in the failed metadata (Richard Hughes)
Version 0.2.2
~~~~~~~~~~~~~
Released: 2014-07-11
New Features:
- Add as_app_get_source_file() to return the file that created the AsApp (Richard Hughes)
- Add as_app_set_state() (Richard Hughes)
- Add as_app_set_trust_flags() (Richard Hughes)
- Add as_app_source_kind_to_string() (Richard Hughes)
- Add AS_APP_SUBSUME_FLAG_PARTIAL (Richard Hughes)
- Add a script to download the Fedora package cache (Richard Hughes)
- Add as_image_get_alpha_flags() (Richard Hughes)
- Add as_screenshot_get_image() (Richard Hughes)
- Add AS_STORE_ADD_FLAG_PREFER_LOCAL to allow the client to prefer local files (Richard Hughes)
- Add as_store_load_path() (Richard Hughes)
- Add as_store_set_add_flags() (Richard Hughes)
- Add a 'status-csv' command to appstream-util (Richard Hughes)
- Add as_utils_is_blacklisted_id() (Richard Hughes)
- Add --screenshot-dir to appstream-builder (Richard Hughes)
- Add some useful image size constants (Richard Hughes)
- Add support for <kudo> introduced in AppStream 0.8 (Richard Hughes)
- Add two new builder plugins to add kudos on KDE applications (Richard Hughes)
- Allow AsStore to load directories of AppData and desktop files (Richard Hughes)
- Remove asb_context_set_extra_checks() (Richard Hughes)
- Remove as_util_get_possible_kudos() as it's now unused (Richard Hughes)
- Sharpen resized screenshots after resizing with a cubic interpolation (Richard Hughes)
Bugfixes:
- Allow calling as_image_set_pixbuf() with a NULL pixbuf (Richard Hughes)
- Allow install/uninstall xml.gz (Igor Gnatenko)
- Allow old applications in the metadata if they have AppData (Richard Hughes)
- Allow per-distro AppData files to be used when upstream supplies a broken one (Richard Hughes)
- Allow users to specify the location and name of the status files (Richard Hughes)
- Always check for duplicate screenshots when using as_app_subsume() (Richard Hughes)
- Always download data files for each application on Fedora (Richard Hughes)
- Always write a 'source' screenshot image (Richard Hughes)
- Assume local files are untrusted when parsing (Richard Hughes)
- Copy the icon kind when removing duplicates (Richard Hughes)
- Deallocate the pixbuf data when the AsbApp has been saved (Richard Hughes)
- Do not allow NoDisplay=true applications to ever be in the metadata (Richard Hughes)
- Do not allow RequiresAppdata to become true with AppData (Richard Hughes)
- Do not hardcode a blacklist of package extra deps (Richard Hughes)
- Fix linking with libarchive (Igor Gnatenko)
- Load extra screenshots for any apps created in appstream-extra (Richard Hughes)
- Never load SVG files at the native size (Richard Hughes)
- Never scale up small screenshots (Richard Hughes)
- Never upscale icons, either pad or downscale with sharpening (Richard Hughes)
- Never use release descriptions from package files (Richard Hughes)
- Promote DESKTOP sources to APPDATA if we subsume an appdata.xml file (Richard Hughes)
- Sort the <component> values alphabetically (Richard Hughes)
- Use as_image_get_alpha_flags() when validating and building metadata (Richard Hughes)
- Use realpath() when setting AsbContext paths (Richard Hughes)
- Validate screenshot captions (Richard Hughes)
- Write metadata of the failed applications (Richard Hughes)
Version 0.2.1
~~~~~~~~~~~~~
Released: 2014-06-24
New Features:
- Add AS_NODE_INSERT_FLAG_MARK_TRANSLATABLE (Richard Hughes)
- Add AS_NODE_TO_XML_FLAG_SORT_CHILDREN (Richard Hughes)
- Add an 'appstream-util upgrade' command to convert version < 0.6 metadata (Richard Hughes)
- Add as_node_find_with_attribute() (Richard Hughes)
Bugfixes:
- Add packages recursively when using appstream-builder --packages-dir (Richard Hughes)
- Allow empty URL sections (Richard Hughes)
- Always use the latest version of AppStream for logs (Richard Hughes)
- Do not abort the build if a non-package file is found while building (Richard Hughes)
- Do not include <metadata> for pre-0.4 metadata (Richard Hughes)
- Do not ship Addons in metadata version less than 0.7 (Richard Hughes)
- Do not write X-Kudo-RecentRelease for new versions of the metadata (Richard Hughes)
- Fix the xmldir in the APPSTREAM_XML_RULES m4 helper (Richard Hughes)
- Include a newline before XML comments to help them stand out (Richard Hughes)
Version 0.2.0
~~~~~~~~~~~~~
Released: 2014-06-19
Notes:
- This is the first release that merges the createrepo_as project with this one.
A new experimental command 'appstream-builder' has been added and can be used
by distributors to build metadata. Normal users don't need this or the shared
library libappstream-bulder, and this can be split off into a subpackage by
downstream if required.
- We're slowly merging parts of appdata-tools into this project too, but we'll
provide more details when the merge is complete.
New Features:
- Add an m4 file to easily validate AppData and MetaInfo files (Richard Hughes)
- Add a --nonet option to appstream-util (Richard Hughes)
- Add 'appstream appdata-from-desktop' to autogenerate a boilerplate file (Richard Hughes)
- Add as_app_get_mimetypes() (Richard Hughes)
- Add as_app_get_pkgname_default() (Richard Hughes)
- Add as_app_guess_source_kind() (Richard Hughes)
- Add as_app_to_file() (Richard Hughes)
- Add as_node_remove_attribute() (Richard Hughes)
- Add as_node_to_file() (Richard Hughes)
- Add bash-completion files for appstream-builder and appstream-util (Igor Gnatenko)
- Add <developer_name> from the draft AppStream 0.7 specification (Richard Hughes)
- Add manpages for appstream-util and appstream-builder (Richard Hughes)
- Add Russian translation (Igor Gnatenko)
- Allow installing AppData and MetaInfo files using appstream-util (Richard Hughes)
- Allow validating more types of files (Richard Hughes)
- Make the project translatable using transifex (Igor Gnatenko)
Bugfixes:
- Accept slightly truncated SPDX IDs (Richard Hughes)
- Add a AsAppParseFlags flag to be able to append non-duplicate data (Richard Hughes)
- Add appstream-build from the createrepo_as project (Richard Hughes)
- Allow any SPDX license when validating in relaxed mode (Richard Hughes)
- Allow 'appstream-util convert' to work with two AppData files (Richard Hughes)
- Allow as_node_get_attribute_as_int() to parse negative numbers (Richard Hughes)
- Allow comments on the root XML node (Richard Hughes)
- Allow dumping .desktop, .appdata.xml and .metainfo.xml files in appstream-util (Richard Hughes)
- Do not add addons that are packaged in the parent package (Richard Hughes)
- Do not require a content license to be included into the metadata (Richard Hughes)
- Don't add the fake ApplicationAddon category for addons (Richard Hughes)
- Inherit search tokens from the addon to the main application (Richard Hughes)
- Return the URL in the validation error when screenshots fail to be loaded (Richard Hughes)
- Validate the <developer_name> tag values (Richard Hughes)
Version 0.1.7
~~~~~~~~~~~~~
Released: 2014-06-12
New Features:
- Add <extends> from the draft AppStream 0.7 specification (Richard Hughes)
- Add support for the 'dbus' AsProvideKind (Richard Hughes)
- Add support for validating metainfo.xml files (Richard Hughes)
Bugfixes:
- Allow 'appstream-util validate' to validate multiple files (Richard Hughes)
- Automatically demangle the update contact (Richard Hughes)
- Correctly use convert-translatable when the source kind is already set (Richard Hughes)
- Do not log a critical warning in as_store_to_xml() (Richard Hughes)
- Do not write a screenshot type of 'normal' as it's the default value (Richard Hughes)
- Don't include the filename in the error output (Richard Hughes)
- Fail to validate AppData files with URLs in the descriptions (Richard Hughes)
- Fix a crash when we try to validate <p></p> (Richard Hughes)
- Support the non-standard X-Ubuntu-Software-Center-Name (Richard Hughes)
Version 0.1.6
~~~~~~~~~~~~~
Released: 2014-05-28
New Features:
- Add as_app_get_names() (Richard Hughes)
- Add as_image_get_basename() (Richard Hughes)
- Add as_image_get_md5() (Richard Hughes)
- Add as_image_load_filename() (Richard Hughes)
- Add as_image_save_filename() (Richard Hughes)
- Add as_image_save_pixbuf() (Richard Hughes)
- Add as_image_set_pixbuf() (Richard Hughes)
- Add as_node_get_comment() (Richard Hughes)
- Add AsProvide (Richard Hughes, Kalev Lember)
- Add as_screenshot_get_source() convenience helper (Richard Hughes)
- Add AS_TAG_FLAG_USE_TRANSLATED (Richard Hughes)
- Add validation for <releases> (Richard Hughes)
Bugfixes:
- Also support validating .appdata.xml.in files (Richard Hughes)
- Correctly parse the localized descriptions from AppData files (Richard Hughes)
- Export as_app_set_source_kind() (Richard Hughes)
- Fix validation of old-style AppData files without screenshot sizes (Richard Hughes)
- Only autodetect the AsAppSourceKind when unknown (Richard Hughes)
- Only require <project_licence> when being strict (Richard Hughes)
- Only show the thumbnail when creating the HTML status page (Richard Hughes)
- Retain comments in .desktop and .appdata.xml files when required (Richard Hughes)
- Subsume more properties in AsApp (Richard Hughes)
Version 0.1.5
~~~~~~~~~~~~~
Released: 2014-05-12
New Features:
- Add as_app_has_category() (Richard Hughes)
- Add as_utils_check_url_exists() (Richard Hughes)
- Add as_utils_spdx_license_tokenize() (Richard Hughes)
- Add the new 'help' url type (Richard Hughes)
- Check the licenses against the SPDX list when validating (Richard Hughes)
Bugfixes:
- Be less strict with the case of the XML header (Richard Hughes)
- Do not save the 'xx' locale (Richard Hughes)
- Do not validate AppData files without <project_license> (Richard Hughes)
- Don't crash when doing 'status-html' on an empty XML file (Richard Hughes)
- LXDE uses X-LXDE-Settings for settings panels (Richard Hughes)
- Only count desktop applications when doing the overview stats (Richard Hughes)
- Support AppData version 0.6 files too (Richard Hughes)
- Use SPDX license IDs in <metadata_license> (Richard Hughes)
Version 0.1.4
~~~~~~~~~~~~~
Released: 2014-04-25
Notes:
- This release adds a utility 'appstream-util' that can do simple operations
on AppStream metadata including generating status pages or converting the
metadata from one version to another.
New Features:
- Add AsProblem to report non-critical problems with metadata
- Add as_app_get_metadata_license()
- Add as_app_get_source_kind()
- Add as_app_get_update_contact()
- Add as_app_subsume_full()
- Add as_app_validate() to validate AppStream and AppData files
- Add as_node_reflow_text() to reflow XML text properly
- Add as_node_set_name() internal method
- Add as_store_get_apps_by_metadata()
- Add as_util_get_possible_kudos()
- Add a flag to as_node_to_xml() so it can process all children
- Add a 'html-status' command to appstream-util
- Add a 'non-package-yaml' command to appstream-util
- Add a 'validate' command to appstream-util
- Parse AppData files when using as_app_parse_file()
- Read AppStream metadata from the per-machine location
Bugfixes:
- Allow writing AppStream entries with an unknown type
- Do not add a 'type' attribute if the component type is unknown
- Do not crash if an AppStream entry has no ID
- Do not save metadata keys with an 'x-test' locale
- Do not try to parse non-application tags as applicatons
- Do not write xml:lang key versions when the same as the 'C' version
- Return -1 from as_app_get_language() if the language is not found
- Sort the application languages by name so they are predictable
- Support <screenshot> sections without <image>'s
- Support the AppStream 0.6.1 priority attribute
- Support translated <ul> and <ol> tags when normalizing
- When adding a duplicate AppStream application merge the entries
Version 0.1.3
~~~~~~~~~~~~~
Released: 2014-04-10
New Features:
- Add as_app_search_matches_all()
- Add as_utils_is_stock_icon_name()
Bugfixes:
- Actually add mimetype data to the AsApp object
- Do not allow applications without icons
- Ignore settings panels when parsing desktop files
- Load AppStream files assuming literal text strings
- Only set app-install icons to cached if not already stock
- Set the icon kind to stock if it matches any stock icon
- Use the legacy names when using as_node_get_tag()
Version 0.1.2
~~~~~~~~~~~~~
Released: 2014-03-26
Notes:
- This release adds basic Ubuntu app-install support, speeds up the time taken
to parse large metadata files and reduces the amount of memory used to load
the AppStream metadata.
New Features:
- Add as_app_parse_file() which parses a .desktop file into an AsApp
- Add as_node_get_tag() and only store the name when the tag is unknown
- Add as_node_take_attribute() to reduce allocations during parse
- Add as_store_load() to load system and user locations
- Add as_tag_from_string_full() to control whether fallback names are used
- Load the Ubuntu app-install data which uses screenshots.debian.net
- Use gperf to generate a perfect hash for the tag names
Bugfixes:
- Do not use GHashTable to store node attributes
- Reduce the number of small attr key allocations
- Use the full ID for the AsStore hash
Version 0.1.1
~~~~~~~~~~~~~
Released: 2014-03-21
New Features:
- Add an 'api-version' property to AsStore
- Add as_store_from_xml() to load text XML not from a file
- Add the new AsUrlKind's and <architectures> from API 0.6
- Speed up as_tag_to_string() by using a table and a single lookup
- Support old-style markup-less <description> tags
- Support the 'origin' attribute on the root node
Bugfixes:
- Do not crash when using getting an unset description
- Do not depend on functions introduced in Glib 2.39.1
- Fix parsing incompletely translated AppData files
- The 'appcategories' tag is now deprecated for 'categories'
Version 0.1.0
~~~~~~~~~~~~~
Released: 2014-03-18
Notes:
- This library provides GObjects and helper methods to make it easy to read and
write AppStream metadata.
New Features:
- Add and search for applications in an application store
- Easily retrieve the best application data for the current locale
- Efficiently interface with more heavy-weight parsers like expat
- Get screenshot image data and release announcements
- Read and write compressed AppStream XML files
|