forked from dod38fr/config-model
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathChanges
More file actions
2288 lines (1650 loc) · 84 KB
/
Changes
File metadata and controls
2288 lines (1650 loc) · 84 KB
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
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{{$NEXT}}
2.045 2013-10-18
* Manually restored dep on MouseX::NativeTraits
* bumped dep on Config::Model::Tester to 2.046
* cme: print an error message when no application is
specified (Closes Debian #726447)
2.044 2013-10-13
The main change of this release is the addition of a JSON backend
so that cme can read and write JSON configuration files. Given that
JSON is more and more used, this new backend is bound to be useful.
Other fixes:
* cme:
* force write back if -force option is used
* updated doc
2.043 2013-09-20
* build depends on Config::Model::Tester 2.046 to avoid dependency
issues
* Value: accept yes/no true/false as default value for Boolean.
This can make model declaration more consistent when boolean
value must be written as true/false, yes/no. In this case,
forcing model developer to write default value as 0/1 was not
cool and prevented generation of model like LcdProc's model.
2.042 2013-09-15
* Config::Model: load AnyEvent as soon as possible to avoid
test issues
* ListId: fix typos in pod doc
* scripts: use /usr/bin/env to be more portable (e.g. for Mac OSX)
2.041 2013-08-14
Main changes for this release are:
* The ENCRYPT parameter of Popularity contest model was changed from
boolean type to a yes,maybe,no value, thus allowing a
"réponse de Normand" ;) This follows up resolution of Debian
bug #714917.
* Config::Model::Tester class was moved in its own distribution.
Hence this distribution now build depends on Config::Model::Tester
Other bug fixes:
* Avoid warning with 'cme list' (Closes Debian #719197)
* ShellVar backend: Allow variable assignement like "foo = value".
This is not legal is Shell but sometimes used in configuration files
using a shell like syntax (Closes Debian #719256)
Other changes:
* Removed build-dep on File::Copy::Recursive
2.040 2013-07-20
* Fix '~' in path substitution in BackendMgr
* Skip cme command test on non unix-like systems
2.039 2013-07-18
Framework changes:
* CheckList:
+ Added clear_item and clear_layered methods
+ added user mode to retrieve data
* clear now reset (undefs) a check-list instead of setting items to 0
* load_data accepts hash ref
* get_check_list_as_hash: added user mode, don't return 0 for undef items
* set_checked_list_as_hash: Missing items in the given list of parameters are now reset
* Added dependency on Module::Runtime to avoid test failure on Mac and Windows
Backends:
* BackendAny: lack of suffix method is now an info not a warning
* BackendMgr:
+ added $home override for tests
+ added default_layer backend parameter
+ added os_config_dir parameter
- die if obsolete read_config_dir or write_config_dir is specified
Test framework:
* Tester:
+ allow override of home directory for tests
+ can also use $model for internal tests
* check test item now accepts array refs
Doc:
* added log config file in contrib
2.038 2013-07-03
Framework changes:
* cme: added -backup option.
Application changes:
* popcon model:
* replace yes/no enum value with boolean written as yes/no
+ added ENCRYPT support
Backends:
* all: don't loose part of comment when '#' is embedded in comment
* Ini backend: handle storage to non available element by ditching data
2.037 2013-06-15
Framework changes:
* renamed ChangeLog in Changes to conform to Perl standards
* added missing dep on File::Slurp
* cme: added -try-app-as-model option (experimental)
* Most pod docs: Replaced obsolete links to Config::Model::AutoRead
with Config::Model::BackendMgr
Application changes:
* Removed LcdProc model (now in its own Perl distribution)
2.036 2013-05-25
Framework changes:
* config-edit: added deprecation warning
* Value:
* fix pod doc error in L<> which tripped smoke tests
* apply_fixes: check after fix must be asynchronous
* Node::load_data: use a predictable order to accept elements.
This change fixes the smoke test error in t/backend_ini.t
(Closes Debian #709785)
Test changes:
* make t/pod.t run only when AUTHOR_TESTING is set
(Closes RT 8533 and Debian #709784)
2.035 2013-04-27
* Node has_element: small optimisation for common case
* cme:
* make sure that async store is used before actual check
* load Tk only when using edit command (avoids issues on exit
with AnyEvent)
2.034 2013-04-17
* Model: fix generation of model doc that broke with 2.032
2.033 2013-04-15
* Model: load returns loaded class in the correct order. Otherwise
Config::Model::Itself will write back config classes in a random
order (for files declaring more than one class)
2.032 2013-04-15
Framework Changes:
* Model: completely re-organized the way a model is loaded to
be able to add model extensions to an included class
* Doc: clarified and moved model plugin doc in advanced manual
* config-edit: added deprecation warning in Synopsis
Application changes:
* Fstab model: added missing relatime option
2.031 2013-04-03
Framework Changes:
* All: use directly Mouse instead of going through Any::Moose
(which is deprecated)
* Removed dependency on Any::Moose
2.030 2013-03-23
Framework Changes:
* Value: fix reset value for mandatory with default value
* Node load_data: added kludge to avoid breaking C::M::Itself
Application changes:
* LCDproc model generator: Added a more special treatment for
Hello and GoodBye parameters to cope with new INI backend
(which is more strict than previous versions)
01 2013-02-27
The main change of this release is to provide asynchronous store
check. Now, a model can check the validity of a configuration
value against a remote resource in a non-blocking way. This is
currently used by Dpkg model to check the validity of package
names with Debian server through several concurent http
requests. This change is backward compatible except for Value
store method: it returns now 1 instead of the stored value. OTOH,
that feature was not documented. Classes inheriting
Config::Model::Value may be impacted, although old version
of Config::Model::Dpkg::Dependency is still working.
In more details...
Framework Changes:
* Instance:
* propagate check parameter to root node
* store path of tree items having an error condition
* ListId:
* changed load_data signature to accept named parameters
* load_data accepts hash_ref and store them in the first element
* Value:
* croak if notify_change is called for nothing
* make sure that all fixes are applied
* limit the number of times a fix can be tried
* store always returns 1
Backend changes:
* rewrote INI parser so that check is enabled directly on store
Test Changes:
* fixed multistrap tests
* test ini backend: test split_reg parameter
2.029 2012-11-28
* cme-gen-class-pod: pod doc can be generated from
a class specified on command line argument (really this
time, previous version was broken)
* cme: run the first extension found in @INC, not the last one
2.028 2012-11-27
* cme:
+ added a BUGS section in man page
* Improved error message for unknown elements
* cme-gen-class-pod: pod doc can be generated from
a class specified on command line argument
* fix test that broke with perl 5.17
* removed unneeded 'use UNIVERSAL'. (should fix smoke tests)
2.027 2012-10-30
* fix checklist problem with writing default values
(which broke openssh demo). (Closes: Debian #691338)
* Dumper: fix wrong module reference in pod doc
2.026 2012-09-27
* Re-released 2.026_2 as good to go.
02 2012-09-20
* Added build-time dep on YAML::Any
01 2012-09-20
* Application changes:
* IMPORTANT: Debian Dpkg model was removed. It will be
available on Debian soon as a native package. It will also
be published on CPAN in Config::Model::Dpkg.
* Framework changes:
* cme: added possibility to run extensions. The first extension
is gen-class-pod. I.e. you can run 'cme gen-class-pod' (which
is useful only if you develop a configuration model...)
2.025 2012-09-10
* Test: Fix fuseui test regression that shows on
non-linux systems
2.024 2012-09-04
* Debian dpkg dependency:
* Warn and can remove unversioned dependency on essential
package (Debian bug 684208)
* Warn and replace perl-modules dependency with perl
* Don't mess with alternate dependency with < relation
(Closes Debian #682730)
* remove Debian epoch when checking perl module version
from corelist (Debian bug # 683861)
* Framework changes:
* Lister: use @INC to get available application models. This is
mostly useful to use local models for tests
* cme command changes:
* added bash completion for 'fix' subcommand
* fix pod doc (gregoa)
* improved notification change (avoid duplication and added a
clear message for swap)
* cme: added -dir-char option for fusefs command
2.023 2012-07-04
* Application changes:
* Debian dpkg control binary:
* In control binary Depends, replace 'perl' dep with ${perl:Depends}
This is implemented as a warning and is changed only if apply_fix is
called. Duplicates ${perl:Depends} will also be removed by apply_fix.
2.022 2012-07-03
* Application changes:
* Debian::Dpkg
* fix a race condition between the various calls to Debian's madison site
* Framework changes:
* added -from and -filter option to cme fix command
2.021 2012-06-28
* Application changes:
* Debian::Dpkg
* Bump default compat level to 9 (for hardening)
* dependency model:
* Make concurrent calls to madison to reduce user wait
with AnyEvent::HTTP
* make sure that apply_fix trigger notification changes
so the fixes are indeed saved when running apply_fix
(thanks to gregoa for the heads up)
* copyright: allow any non-space character for license short name
* Framework changes:
- Removed dependency on LWP::Simple
+ Added dependency on AnyEvent and AnyEvent::HTTP
* cme: clean up the mess after AnyEvent headbutts Tk :-/
2.020 2012-06-18
* Application changes:
* Fix DEP-3 model:
+ added missing parameters (Subject ...)
+ accept Bug-* parameters
* Better cope with unstructured text after Subject keyword
* Framework changes:
* prepare release. depends on List::MoreUtils
* fix cme doc example (Closes Debian: #677069)
* Node: accept stuff: added 'accept_after' parameter
* Tester framework:
* force write_back during tests
2.019 2012-06-05
* Framework changes:
+ doc generated from model now provides details on status
(e.g. deprecation) and migration (HEAD, master)
* check_list: make sure that apply_fixes can be called
on check_list even though it does nothing there
2.018 2012-05-29
* Application changes:
+ Debian::Dependency: Added a check and fix for debhelper version
requirement taking into account compat value. This check is
available only with full dpkg model (i.e. "cme xxx dpkg"
command). It is disabled when using only dpkg-contol model ("cme
xxx dpkg-control").
* Debian::Dpkg model: fix default Vcs-Git URL for debian-perl packages
* Framework changes:
* Value:
* avoid issuing the same warning twice
* send a notif warning only when default data is different
from current data as already seen by user (i.e. // )
* cme: better formatting when printing changes
* WarpedNode: Don't call notify_change when not needed.
* added a note parameter for notify_change
* Instance: initial_load default value is now 0.
* Node: correctly set initial_load mode when init is called
recursively
2.017 2012-05-21
* Framework changes:
* Fix missing YAML dependency in configure require
2.016 2012-05-20
* Framework changes:
* Having dependencies in prereq does not mean they are listed
in runtime require. The dependency list is now duplicated to have
them in prereq (for smoke tests) and runtime require. This should
help smoke tests for modules depending on Config::Model
* Fixed small doc mistake in Tester
2.015 2012-05-14
* Application changes:
* Copyright model: replace migrate_keys_from with new
migrate_values_from. This simplifies the model
* Framework changes:
+ List or Hash: added migrate_values_from to enable migration
from another hash or list. migrate_keys_from for list element
is now deprecated.
* List, Hash, Value: ensure that migration is done after initial
load, i.e. once all data from configuration file is loaded.
* AnyId, List, Hash: deprecated get_all_indexes in favor of
fetch_all_indexes
* Value:
* make sure that setting a default value triggers
notify_change so the resulting modification in the
config file can be saved
* don't trigger notify_change with update undef -> undef
* Test changes:
* Tester: added file_contents_like and file_contents_unlike tests
2.014 2012-05-03
* Application changes:
* cme: list changes before saving data (unless save is handled by
user interface) (HEAD, master)
* Dpkg backend: reworked the internal data structure used between
DpkgSyntax and the other modules. The new data structure feature
the file line number to provide error messages with the line
number where the error was found. This patch also tracks what was
changed during parsing (see "altered" keyword) to call
change_notify with new option "really => 1" (closes debian #670441)
* Framework changes:
+ all: added tracking of changes performed by user. The change list can
retrieved from Instance object with list_changes method (this list can be
cleared with clear_changes).
+ Depends on Text::Diff
2.013 2012-04-06
* Application changes:
* Debian Dpkg model: Moved libtiff4 transition warning
from source Build-Depends to binary Depends
* Framework changes:
Model doc generation: small formatting fix to avoid Pod::Html
errors with Debian/Dpkg/Source.pod (should fix ActiveState breakage)
* Test changes:
* multitrap tests: really ignore warnings coming from Text::Balanced
(which pop up in Perl smoke tests with perl 5.15.9)
2.012 2012-04-05
* Application changes:
* Debian Dep-3 patch parser: quilt formats patch in a very concise
way. There's no Index: line and no '====='. OTOH, imported patch
may contain this lines until the patch is refreshed. This commit
makes sure that both types of patch are parsed
correctly.
* Debian model: changed meta element into my-config. This should
make clear that this element stores user's config regarding dpkg
files.
* Tester: Produced file order is not important. Make sure both
list are sorted before being compared (Closes Debian #666705)
* Test changes:
* multistrap test: ignore load warnings (which pop up in Perl
smoke tests with perl 5.15.9)
* Framework changes:
* Instance: added on_change_cb to take action when something is
modified in the config tree
2.011 2012-03-19
* Application changes:
+ Debian copyright: added deprecated License-Alias paramater.
When set to 'Perl', this parameter is migrated into
License: Artistic or GPL-1+
+ Debian DpkgSyntax: better error message. This was really annoying for DEP-3
patch parser.
+ cme: added forgotten -stack-trace option
* Tester changes:
- removed check_* parameter.
+ Added wr_check parameter
+ added possibility to pass options to grab and fetch with check and wr_check.
2.010 2012-03-13
* Application changes:
* Debian control:
* fix warning of section and priority fields
+ added check and fix for libpng and libtiff4 transistions
* Debian Copyright: added warnings if Files uses either [ ] or |
(thanks gregoa for the suggestion)
* cme: check must check all values
* Framework changes:
* IdElementReference: use fetch in user mode to get choice list
(means values in layered mode)
* Value: fetch with allow_undef mode must behave like user mode,
not backend mode (fix warp problem in layeredmode)
* ValueComputer: added usage of compute as an upstream default
value. Some cleanup was done around that
2.008 2012-03-01
* Application changes:
* Debian control:
+ comments are now parsed correctly
* Debian copyright model:
+ added support for deprecated X-Comment. X-Comment fields are converted
to Comment fields (note that regular comments are forbidden)
* Framework changes:
* Requires perl 5.10.1 instead of 5.10.0
* provide file name and line number in syntax error message
2.007 2012-02-26
* cme: fix 'migrate' command.
2.006 2012-02-25
* Application changes:
* Debian control model:
* bumped default Debian source standards version to 3.9.3
- no longer try to enforce first lowercase in Synopsis.
Too many false positives (fix debian #661184)
- Removed check for virtual package (source packages are seen as
virtual packages). Unfortunately, virtual packages are now reported
as unknown packages. Suggestions on how to fix this are welcome.
* Debian copyright model:
* changed copyright type from line based list to string leaf
* Framework changes:
+ cme: added forgotten 'migrate' command (i.e. cme migrate stuff)
2.005 2012-02-23
* Application changes:
* Debian copyright model: updated url for dep-5 format with new
Debian approved one. URL is no longer updated silently, user
will have to request it with 'cme fix' command
2.004 2012-02-09
* Build.PL runs gen_class_pod.pl which loads Config::Model from lib,
hence most of the runtime dependencies are now moved in
configure_requires. This should improve Perl smoke tests.
2.003 2012-02-08
* Added configure_requires on File::Slurp (Fix RT#73611)
* Updated meta-data to point toward github instead of sourceforge
2.002 2012-02-08
Most of the fixes aim to solve issues with Perl smoke tests
* Application changes:
* fix bash completion for cme options
* Framework changes:
* Added dependency on namespace::clean and Mouse
* AnyId: remove deprecation warning. check is useful as an alias to check_content
* Lister: no need to require perl 5.10
* Tester: don't use next to exit from sub
* Tests:
* avoid undef $ENV{HOME} problems on Windows
2.001 2012-02-06
Big change this time, hence the version bump tp 2.001. The main
change for users is the deprecation of the config-edit program in
favor of cme. Instead of using options, this cme uses command
keywords like git, so users will have more possibilities while
typing less. Internally, some performance improvements were
implemented. Given the work required, core Config::Model classes
were converted to Moose.
In more details:
* Application changes:
+ New cme program to edit/validate configuration.
* model Debian::Dpkg:
* fixed computed default value for VcsBrowser
+ added rules element for debian/rules file
* DEP-5 model: updated doc and removed obsolete URL. Thanks to skaet
for raising this point
* Debian/Dpkg/Control/Binary model:
+ Added deprecated XC-Package-Type.
+ Added migration from XC-Package-Type to Package-Type
* Framework changes:
* All:
+ Improved performance by running validation only when data
is modified. (implemented with notify_changes method)
* breaks memory cycles in backend manager
* Converted to Moose all classes inheriting Config::Model::AnyThing
1.265 2011-12-06
* Application changes:
* model Debian::Dpkg:
+ added Multi-Arch parameter
* don't fail when debian/copyright is missing or empty
* Framework changes:
* Config::Model::Value: layered value is also part of a standard value
* Config::Model::CheckList: in custom mode, checklist must return the whole
list when queried by user, not just the changed items.
(Fix Config::Model::OpenSsh RT#72916)
1.264 2011-11-29
* Application changes:
* model Debian::Dpkg:
- removed another email check (was hiding in a hg branch)
1.263 2011-11-29
* Application changes:
* model Multistrap:
* Use convert =>lc on most parameters to match multistrap's behavior
+ added deprecated forceunpack parameter (migrated to unpack).
+ force sections and key names to be lowercase
+ added components parameter to Multistrap::Section model
* model Debian::Dpkg:
- removed email checks
* bash_completion: use new Lister class to gain a lot of speed
* Framework changes:
+ Config::Model::HashId: added convert parameter
* Config::Model::Value: recompute choice before checking
if a reference matches available choices.
+ Config::Model::Lister: new bunch of functions to list models
and applications. Used only by bash_completion.
* Inifile backend changes:
* delay validation after read because read order depends on the
INI file and not on the model.
+ added force_lc_(key|name|value) parameter to take care of case
insensitive INI files
1.262 2011-11-18
* Config/Model/Tester: avoid test failure by sorting file list
before comparing them
1.261 2011-11-17
* Test changes (Config/Model/Tester):
* reworked cfg file list check
* Avoid test conf pollution from one test to the other
+ added possibility to specify arbitrary file name (for multistrap)
* Application changes:
+ new multistrap model. Supports multistrap's layered configuration
* lcdproc:
* lcdconf2model.pl: added better check of info in square brackets
* lcdproc/LCDd.conf: resync with upstream lcdproc LCDd.conf
* Inifile backend changes:
+ added write_boolean_as, split_list_value, section_map and
join_list_value parameters to cope with special conventions
regaring INI files
* No longer write empty list parameter (i.e. just "foo=" lines)
* ensure that empty sections are not written
* Framework changes:
* Config::Model::Value:
+ added write_as parameter for booleans
+ added clear_preset method
+ C::M::CheckList, C::M::Instance, C::M::Value: added layered value
+ C::M::Value::LayeredInclude: new class to include sub-layer
of configuration data
+ config-edit: added -config_file option
+ added Test::File::Contents build dependency
1.260 2011-10-28
* Application changes
* Backend Debian::Dpkg: skip empty lines in patch series files
* Framework changes:
+ Config::Model::Tester: new class extracted from t/model_tests.t
to test config files and models.
* Config/Model/Loader.pm: Make sure that load("!") goes to root
even if load was called from a child node. Fix RT#69480
1.259 2011-10-16
* Application changes
* model Debian::Dpkg: Bumped compat default value to 8
* fixed test to work even if lcdproc is not installed
1.258 2011-10-14
* Application changes
* model Debian::Dpkg::Patch: Synopsis is no longer mandatory.
Issue a warning for empty Synopsis and propose a value based
on patch name
+ model Debian::Dpkg::Meta: added email element
+ model Debian::Dpkg::Copyright::LicenseSpec: compute license
text from Software::License (requires version patched for Debian)
* Backend::Debian::Dpkg::Copyright: Rewrote parser to classify
correctly Files and Licenses paragraph even if extra fields are
prepended.
* model Debian::Dpkg::Control::Source: Vcs-browser must also accep
https URLs
* lcdproc: fixed some specs in square brackets in LCDd.conf template.
Reworked model generator to better specs in square brackets and
handle model snippets in curly brackets
* Framework changes:
* ValueComputer: &index and &element can only work with parent
or ancestors in tree. Fixed grammar inside of {} statements.
It is now able to return '' when no replacement is found
* Value: fix warn_if warn_unless check in custom mode. Cleaned up
mess about mandatory value checks. Custom values are no
longer checked this way
1.257 2011-09-16
* Framework changes:
* config-edit: avoid deprecation warning
* C::M::AnyId: enable automtic fix of duplicated values
* C::M::Node: Create BackendMgr when read_config or write_config
is defined (Fixes Debian FTBS in Config::Model::TkUI See #642157)
* Application changes
+ models Debian::Dpkg::Control::Binary and Source:
added duplicates warning in dependencies
+ model Debian::Dpkg::Control::Source:
compute Vcs-Browser and Vcs-Git default value for pkg-perl team
* model Debian::Dpkg::Patch: No need for a first capital letter
restriction. Look for debian patches in the correct places
1.256 2011-09-16
* Application changes
* Dpkg control model: warn (and offer to fix) duplicated
dependencies
+ Dpkg model: new compat docs and dirs parameters
* Framework changes:
* TreeSearcher.pm: properly fix conflict between method name and
Moose::Util::TypeConstraints
1.255 2011-09-15
* Framework changes:
* Instance.pm, Node.pm: take into account force_load
with delayed loading of config files
* BackendMgr.pm: New Moose class (renamed from AutoLoader)
1.254 2011-09-04
* fix tests that blow up with Debian build tools
1.253 2011-09-02
* Framework changes:
* AnyId: reworked warning storage and display
* Value: check can be called without arg to check current value
1.252 2011-09-01
* Framework changes:
* AutoRead.pm: correctly handle ~ as home dir (thanks fabreg)
* Backend/ShellVar.pm: do not write global comments if
there's no data to write
* AutoRead.pm: do not leave empty files
1.251 2011-08-30
* Application changes
* Backend Debian/Dpkg/Copyright.pm:
Fixed parser to avoid confusing License and License-Alias
+ model Debian/Dpkg/Control/Source.pl:
warn in case of duplicated dependencies
* Debian/Dependency.pm: Fixed handling of dependency alternates
* Backend Debian/Dpkg/Patch.pm: patch write is now working
* Framework changes:
* Value.pm: rewrote apply_fix to use check to apply fixes.
No longer stores fixes as sub ref.
* AnyId.pm: rewrote apply_fix to use check to apply fixes.
Split check in a global check and dedicated index (check_idx) check
* AnyId.pm: Added fix_duplicates feature
* Instance.pm: apply_fixes: now relay the call to hash and lists objects
* OjTreeScanner.pm: added hooks for node_content hash_element and list_element
1.250 2011-07-22
* Test changes
* Debian dpkg tests: reworked cache file syntax (text instead of
Perl). Perl file did change randomly depending on order of
hash keys. That caused trouble when building Debian packages
because running tests did change a source file.
* Application changes
* Debian Dpkg License model and backend:
Reworked Licence models to allow comments and arbitrary parameters
in stand-alone licences section (Closes Debian #633847)
* Backend Debian::DpkgSyntax: Better handle newlines
* Framework changes:
* lib/Config/Model/Loader.pm: Raise an exception if a hash of
node gets a load string like hash:foo=bar (this one is
reserved for hash of leaves)
1.249 2011-07-12
* Framework changes:
* Config/Model/Value.pm:
* apply_fixes applies all available fixes of a
value *then* save the value.
* Emit one warning per problem instead of one
warning per problematic values (with embedded newlines)
* Application changes:
* Config/Model/Debian/Dependency.pm: reworked to take buildd
limitation into account (check if Perl version is available
in sid to decide the order of the alternates dependencies)
1.248 2011-07-05
* Framework changes:
* Reworked test framework
* New test require new build dependency: File::Copy::Recursive
* C::M::Value: allow an enum to have an empty ('') value.
* Yaml backend: Do not try to call load_data when YAML
file is almost empty (file present but no data in there)
* config-edit: force save when command are passed in command
line arguements
* Application changes:
* Debian::Dependency: Do not issue warning when a package
is pure virtual (found from local apt cache)
* Debian::Dpkg::Control backend: read control information
according to element order in config class. This avoids
problems when Maintainer field is declared after
the Dependencies
1.247 2011-06-27
* Application changes:
* examples/lcdproc/LCDd.conf: fix typos
* Framework changes:
* lib/Config/Model/Backend/IniFile.pm: Fix failure to load in
debug trace: do not call location when $obj is undef
1.246 2011-06-17
* Application changes:
* LCDd.pl model: re-generated with new C::M::Itself to avoid spurious pod
formatting. Fix issue with embedded quotes in Hello and GoodBye parameters.
1.245 2011-06-17
* Application changes:
* models Debian::Dpkg::Copyright::License:
Allow any license exception keyword (fix Debian bug #627874)
+ New model for lcdproc:
The model for lcdproc (LCDd) is generated from the template
LCDd.conf file provided by lcdproc project. This model can be
generated by running Dist::Zilla (when working from Mercurial) or
by running Build.PL (when working from Config::Model Perl
distribution).
Note to packagers: LCDd conf files are
(c) 1999-2011 William Ferrell and others, GPL-2.
Consequently, all LCDd models files (generated from LCDd.conf) are
(c) 1999-2011, D Dumont, William Ferrell and others, GPL-2.
* Framework changes:
* lib/Config/Model/Backend/IniFile.pm:
- Do not write twice leaf comments
- handle warped_node like nodes
* lib/Config/Model/Loader.pm:
Do not remove first and last escaped quotes
* Build.PL:
Check (and may be generate) pod doc at build time
(on top of release time)
* lib/Config/Model.pm:
Fix doc generator to test correctly for time stamp
before re-writing docs
* lib/Config/Model/Backend/IniFile.pm:
When check is 'no', discard data that belongs to unavailable
elements
1.244 2011-05-16
* Application changes:
* Fstab model: Prevent wrong value in fs_passno and fs_freq with
bound mount point
* Dpkg: Added doc for control Architecture. Fix pod doc in DpkgSyntax
backend
* Debian/Dpkg/Meta.pl: applied Debian patch fix_perl_group_filter
(set group_filter of debian perl team to 'etch' instead of 'lenny')
* Framework changes:
* config-edit: added -search and -narrow-search options. This options
enable search in tree element, values and tree documentation.
* config-edit: cleaned up option names (always accept '-' in place of '_')
* Config/Model/AnyThing.pm: fix location string and fix grab function
1.243 2011-05-02
* Application changes:
* dpkg control: bumped standard version to 3.9.2
* dpkg: fix spelling . Closes RT# 67783 and 67784. Thanks carnil
* dpkg control license: tweaked grammar to accept commas in license
fields. Closes Debian #624305. Thanks Niko Tyni.
* Dpkg/Control/Source.pl : added XS-Python-Version ans X-Python-Version
(first steo to solve Debian #624321)
* Debian Dpkg Meta model: package filter is computed from group-filter
OR private policy
* Framework changes:
* reworked warp registration mechanism (Changed inherited WarpedThing into
delegation to Warper)
* t/debian*.t: Put back Apt::Pkg test to avoid smoke test failure
* ValueComputer: Fixed bug to allow temporary variables and $_ in eval'ed
formulas
1.242 2011-04-07
* Application changes:
* dpkg control: added Build-Conflicts field
* dpkg: Added model for debian/source/options and debian/clean files
* Framework changes:
* Value: don't perform value check when fetching standard or default value
* Backend/Plainfile: now support list element in the form of multi line file.
Each line of the file is a value of the list.
* t/fuse_ui.t: skip test if lsmod cannot be used (e.g. Mandriva)
* t/debian*.t: skip test when /etc/debian_version is not found
1.241 2011-04-07
* Framework changes:
* Build depend on Test::Differences
* Load and grab: fix to accept '-' in element names
* Model.pm: Added value help and summary in generated documentation
* DumpAsData: skip hash keys containing undef values
1.240 2011-04-05
* Framework changes:
* Most *.pm: replaced 'no Moose' by 'no Any::Moose'
1.238 2011-04-05
* Framework changes:
* Build.PL: removed dead code that cause downstream pacaking problems.
* Model.pm: fix cosmetic issue with doc generation.
1.237 2011-04-04
* Framework changes:
* added MouseX::NativeTraits dependency (fix RT #67196)
* config-edit: fixed typo (fix RT #66403)
* Value, Node, AnyId: use dclone to backup constructor parameters
* Model: Correctly write author and copyright in doc (i.e not as ARRAY0x0...)
* Yaml backend: fill full_dump option (did not work when set to 0)
* Application changes:
* dpkg control dependency:
- Dependency filtering mechanism uses source package name to find
filter value in Meta. This makes more sense than using binary package
name
1.236 2011-04-01
* Application changes:
* dpkg control dependency:
- Dependency filtering mechanism now use dpkg meta
package_dependency_filter value (i.e. a user parameter).
Debian_perl package will be filtered on lenny by default
Filter mechanism can be overriden in a package by package basis
See Debian::Dpkg::Meta config class for details.
- Warn if a package is unknown.
- Accepts version specified with dpkg variables.
* dpkg control and copyright: warn if dh-make-perl boilerplate is found
* dpkg control: added Package-Type parameter (Peter Pentchev)
* Dpkg meta: new class to enable user to customize dpkg editor.
(email-updates and dependency-filter). Content of meta is saved in
~/.dpkg-meta.yml
* Dpkg control: change e-mail address based on content of meta
email-updates
* Framework changes:
* Value: added replace_follow parameter to specify automatic
replacement based on a hash somewhere in the configuration
tree (used by dpkg e-mail update)
* Extracted initialisation of reader and writer from new() and moved in
init() method to avoid deep recursion on startup.
* Use Any::Moose instead of plain Moose
* Removed dependency on MooseX::Singleton
* Model: added author, copyright, license fields. This data is not used by
Config::Model, but can be used in the user interface or to generate config
class doc
* AnyThing: Fix parsing of multi line annotations. Now use Pod::POM
to load annocation from Pod document
* dist.ini: Depends on Pod::POM
* Model.pm: added generate_doc method
* config-edit: new -gen-pod option to generate pod document from config class
* HashId: fix default_with_init to be able to auto-create leaf values
specified in the model
1.235 2011-03-01
* Application changes:
* dpkg control source model: Encourage Standard-Version 3.9.1
* dpkg control dependency: only versions older than old-stable (i.e.
not found on madison) will trigger a warning
* dpkg copyright: Handle license in header (Closes Debian #614776)
* Dpkg copyright backend: skip empty copyright lines