File: ChangeLog

package info (click to toggle)
python-jenkinsapi 0.3.11-5
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 1,216 kB
  • sloc: python: 9,441; xml: 83; sh: 31; makefile: 13
file content (1134 lines) | stat: -rw-r--r-- 44,273 bytes parent folder | download
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
CHANGES
=======

0.3.11
------

* jobs.py: don't yield jobs twice (#740)
* Add debug log message in JenkinsBase.process\_job\_folder to follow execution progress (#738)
* don't faile when node\_descriprion is missing (#737)
* Fix safe exit test (#736)
* don't stale feature requests or "help wanted"
* change label for stale issues
* Fixed idle state not being refreshed (#575)
* Simple plugins (#735)

0.3.10
------

* Add method for streaming build logs (#722)
* add instructions for Stale bot
* Fixed problems with changeSets (#717)
* Create Node by providing predetermined configuration (#730)
* Fix plugin versions (#734)
* Updates Requester to use a Session, maintaining cookies (#727)
* Feature/multibranch pipeline job (#715)
* Fix failures caused by plugins (#718)
* Fix for build.get\_artifacts() (#712)
* Add safe exit (#700)
* simplify crumb usage (#704)
* generate new api token for logged in user (#706)
* ignore dot files (#705)

0.3.9
-----

* Updated password
* url encode folder name, to fix forward slashes (#702)
* Add new method to create job and use it to speedup QueueItem (#699)
* See if Jenkins is lazy when loading build history (#698)
* Removed python 3.4 and added 3.7 (#695)
* Proposed CloudBees integration fix to job.invoke. (#693)
* Fix pylint errors (#694)
* Add authentication system tests (#686)
* Use session id cookie to improve performace (#685)
* Parameterize war-filename and locally save hpi-files (#684)

0.3.8
-----

* Fixed typos noticed when reading the file. (#680)
* Support keyworded variables for requester, fixes #679 (#682)

0.3.7
-----

* re-encrypt password
* change password again
* Plugin delete (#674)
* disable pyling check of unnecessary-pass
* Updated pypi password
* set travis to release on tag
* Add future improvement line
* add dependency plugin: trilead-api
* Removed unused files
* add try except for func create (#675)
* Removed unused file
* Skip test on release stage
* Add method to update offline reason for a node. (#613)
* Support SSH credential update (#619)
* add ability to keep build forever (#672)
* Handle changesets returned by Jenkins job that use Pipeline (#654)
* Change pylint command line (#671)
* update README dev guide (#667)
* Fix a lot of warnings (#662)
* Remove ssh credentials no longer supported by ssh credentials plugin (#657)
* Update link to travis
* Expanded test coverage for view.py (#646)
* Python 3.6 and 3.7 support (#641)
* changed requirements to support 3.6 and immediate testing
* Changing to  \*args and \*\*kwargs in requester init. Fixing TypeError bug (#640)
* Retrieve git repo url for a given build (#634)
* Get Build url for a given build object (#635)
* Add support for client side certificates, closes #632
* add View.remove\_job
* Add new method Jenkins.run\_groovy\_script(self, script) for running arbitrary groovy scripts on the Jenkins server. This fixes #601
* Add additional methods Nodes.items(), Nodes.itervalues() and Nodes.values() to match the methods provided by the built in dict class
* Add docstrings for Nodes.keys(), Nodes.iterkeys() and Nodes.iteritems()
* Added a tests for Nodes.iterkeys(), Nodes.keys() and Nodes.iteritems()
* Move common Node creation functionality out of Nodes.iteritems and Nodes.\_\_getitem\_\_ and in to its own private \_make\_node function
* Added methods to Node for querying information stored in the monitors section of the api tree. These allow the querying of:  - The node's available and total physical memory.  - The node's available and total swap space.  - The local path of the node's workspace area.  - The size of the node's workspace area.  - The local path of the node's temporary area.  - The size of the node's temporary area.  - The node's architecture (eg. "Linux").  - The node's average response time.  - The clock difference between the node and the Jenkins master
* update xml version
* ignore not relevant pylint checks
* add QueueItem.is\_queued() and test for it
* Small Nodes refactoring
* Fix arguments passed in how\_to/use\_crumbs.py
* typo
* Add link to full docs in README
* backwards compatible get\_credentials
* Fix pylint errors
* Fetch, update or create credentials by id instead of description
* init QueueItem properly
* fix inconsistent return values
* update examples information and add example for CrumbRequestor

0.3.6
-----

* add release to pypi from Travis
* don't check for redefined built-ins
* fix lint
* converted tests to pytest
* add missing imports and fix code formatting
* Add jsonp\_to\_json module docstring
* Move Manifest parsing code to utils/manifest.py
* Add unittests for installed plugin version
* Fix Plugin Manifest parsing, plugin install status
* Add 500 to allowed status codes while restarting
* Move update\_center\_dict handling to Plugins class, hopefully fix wrong version issues by restarting after install
* Optimize \_wait\_for\_reboot
* Lint fixes and decode bytestring
* Add plugin uninstall; install exact versions
* Fix credentials update test
* Credentials update support
* disable master executors temporary to let test pass
* add codecov dependency and env variables for it
* add timeout parameter to Jenkins object
* Fixes pycontribs/jenkinsapi#530. It's possible for queued tasks to be unnamed. This is the case when using Pipeline jobs. Check that tasks have names before referring to it
* Close #583: Handle parameters with secret values
* disable logging from requests
* reset executors to test queue
* remove encode to utf when posting config.xml
* add new plugin dependencies, fix all tests
* change disabled job detection (#543)
* Add support for AWS Credentials (#572)
* Fix bug when using private key file(on master) to create ssh credential. (#573)
* Added missing plugin and changed wait for restart test (#579)
* Enabled 5 retries at request lib level
* Add missing packages from package
* Add Jenkins pipeline linter

0.3.5
-----

* Adopt pbr
* Dropped support for Jenkins 1.x
* EnvInject v2.0 now has security settings - add this
* Select jdk8 for build
* set java version to use in Travis
* fix security settings json
* fix: linting (#561)
* Add estimated duration accessor to build class (#555)
* Increment version

0.3.4
-----

* fix security json for 2.x Jenkins (#541)
* Add support for jobs in folders
* Remove .tags
* Update test case for node management
* Enable config Tool Locations for jenkins node
* fix spelling of artefact to artifact
* Correct typo (#531)
* Add get\_env\_vars to Build
* Close #522 Only use parameter actions to access parameters. (#524)
* Add ability in Node to upload a config xml (#515)
* Allow fn changes on save (#518)
* Fix source code url. (#521)
* fix up tox (#523)
* Update index.rst
* Migrate to six (#507)
* Set to use latest pylint
* Removed test
* Converted test\_job\_folders
* Converted most of the tests to pytest (#508)
* Changes based on code review
* Added codecov library
* Changed call to codecov
* Removed "isinstance() is True"
* Moved unit test to systest
* Partially converted to pytest
* Added asserts for file creation
* Removed unittest that is covered by systest
* Converted test\_job
* Converter test\_requester.py
* Converted test\_nodes
* Converted test\_node
* Converted test\_misc
* Deleted unused and duplicated tests, converted test\_label
* Converted to pytest
* Renamed all one letter variables
* Minor change to make pylint happier
* Fixed identation
* Converted new tests after merge from master
* Fixed failing test
* Converted test\_job.py to pytest
* Converted test\_jenkins.py to pytest
* Fixed import
* Converted test\_executors to pytest
* Converter test\_build\_scm\_git to pytest
* Converter test\_job and moved job/build configs to separate file
* Fixed problematic merge
* Made pylint happier
* Fixed tests for py 3.x
* Ignore temp folder removal errors
* Fixed launcher
* Added thread.stop
* Added Jenkins plugin
* Removed python 3.3, added 3.5
* Renamed exception
* Converted systests to pytest

0.3.3
-----

* Adding newline at end of file
* And exit 1..
* Should be echo, not error
* Now using either wget or curl to download the jenkins.war
* Adds correct build information to Build.get\_artifacts
* Cleaned up examples and added example of running job via invoke
* Fix 'get\_build\_by\_params' method (#506)
* Implement \`Secret text\` credential (#504)
* add utf8 encoding to support invoking jobs with unicode build params (#500)
* Add the relative path for artifacts (#497)
* When job is invoked with file param http headers will be now set (#494)
* Delete build (#493)
* Added tests for issue #487 (#490)
* Add ability to retrieve build by params (#488)
* Added check for missing "firstBuild" item (#482)

0.3.2
-----

* Incremented version
* Strict artefact systest (#480)
* Changes badge and cleaned up TODO
* Added CrumbRequester (#479)
* Fixed get\_config() for jobs returned from view (#478)

0.3.1
-----

* Version 0.30.1
* Restored old way of finding jobs (#477)
* Added issue template
* Fixed broken link in cancel item from queue
* Removed pypi upload
* Added codecov, removed coveralls
* Added coveralls integration
* Fixed failing tests on Jenkins 2.0 (#473)

0.3.0
-----

* Categorized view plugin support and change View#add\_job approach (#468)
* Added tests for adding jobs to view (#469)
* Normalized version
* Set version to 0.3.00 and cleaned up a bit
* Added PYPI deploy from travis on new tags
* Changed all links to point to pycontribs
* Fix job search (#465)
* Fix for broken build.stop() function with Jenkins 2.x (#464)
* Add support for retrieve info for Label (#459)
* Fixed for Credentials 2.x plugin (#460)
* Adding a why property to a queueitem object (#456)
* Fixed pylint errors
* Make parameterized builds with file params work
* Do not ignore tree parameter to poll
* Moved unit tests to systests
* Changed poll: do not delegate to parent class
* Proper handling of self.url
* Delegated all job operations to Jobs object
* Job object now able to find job url by asking server Fixed bug in Jobs object
* Set Jenkins obj to ask server for limited info Changed folder processing to make it work if jobs dict don't have url
* Optimizations to reduce amount of data requested from Jenkins
* J2x insecure start (#449)
* Fixes #446 and adds check for credential existance before deleting it
* Adding SSL disabling option, authentication, correction of Java Heap setting and some very helpful comments
* Moved some unit tests to systests
* FIX: No longer remove JENKINS\_HOME folder when JENKINS\_URL is set
* Added section about Jenkins versions, removed "not tested on Jenkins 2.0"
* Fixed url for latest Jenkins version
* Added systests for stable and latest Jenkins version
* Added required plugins
* Changed jenkins launcher to use pre-built home dir
* Added note that library is not tested on Jenkins 2.0
* Set Jenkins download url to use LTS releases
* In systests.TestNodes.test\_get\_node\_labels make sure the node creation code matches the other tests and cleanup the created node when the test finishes. Calling jenkins.create\_node instead of jenkins.nodes.create\_node might be the cause of the Travis CI build break
* Add function to node for querying the labels from the node's config.xml. The config.xml querying and caching was copied from the job's config handling code
* Update setup.cfg to support universal wheels
* Can't find job parameters if in 'property'
* Update setup.py classifiers
* [doc] pep8 cleanup of examples in using\_jenkinsapi.rst
* Add a warnning message if fingerprints aren't enabled
* Fixed EMPTY\_JOB config to match the one returned from Jenkins
* Revert "Tidy up \_\_init\_\_ and comments"
* Revert "Get rid of unused modules and unhelpful comments"
* Revert "Add sudo: false which means we use the new Travis infrastructure"
* Add sudo: false which means we use the new Travis infrastructure
* Correct the logging format
* Get rid of unused modules and unhelpful comments
* Tidy up \_\_init\_\_ and comments

0.2.29
------

* Version bump prior to release
* Added better example for views and fixed bug
* Removed UTF-8 as a method of decoding the content bytes
* Decoding bytes with the ISO-8859-1 encoding
* Added more information about library capabilities
* Added get\_changeset\_items() method
* Fix for issue #357
* Added how\_to examples for nodes and credential creation
* Added support for ssh credentials
* Add a doc regarding ssl\_verify arg in the Jenkins class
* Unified node creation and fixed tests
* Added SSH node creation and tests
* Added credentials and ssh node creation
* Add ssl\_verify flag to the Jenkins class
* Fix line spacing
*  Add changes to get slave information
* Add Build.get\_description()
* FIX: fix bad indentation (2->4 spaces)
* FIX: allow jenkinsapi to be used without installation  (without being registered by pkg\_resources module)
* KrbRequester.get\_request\_dict missing \*\*kwargs
* Update using\_jenkinsapi.rst
* Adding a note about using an API token as password
* Return full response object if requested on job.update\_config method. - https://github.com/salimfadhley/jenkinsapi/issues/369
* Fix pylint violations
* How to kick-off a paramterized build (eg build version, python version)
* working tox configuration for testing/lint with multiple python versions
* fixing lint
* remove testcase which is no longer necessary
* fix typos and lint
* negotiating python 2 vs 3 differences
* add tox to gitignore
* catch ConnectionError as well as HTTPError while waiting for restart
* fixed python3 compatability
* pe8, flakes, system-test for safe\_restart
* tests for install\_plugin and install\_plugins
* pyflakes
* adding jenkins.install\_plugin, jenkins.install\_plugins, and jenkins.safe\_restart
* Manual PEP8 changes

0.2.28
------

* Actually, post messages are valid as long as data is not None
* As long as the posted message is not None or empty we consider it to be valid. Requests library may still theow an exception
* Add comment about the additional requirment for six in this example
* Version bump, remove useless assertion in requester and remove unhelpful dependency on six
* handle python3 urllib
* download artifacts: handle files with special characters

0.2.27
------

* Run autopep8 on everything - gotta have standards
* we dont use circle any more
* make examples work with Python3, reduce some code-smell
* add make venv utility script and version bump
* changing logic to check passed params
* Allowing using standalone file parameter with buildWithParameters when no other parameters are passed
* Taking care of Workflow (official) plugin job in get\_params. Need to check "parameterDefinitions" under "actions" and "property"
* Taking care of Workflow (official) plugin job which doesn't have "parameterDefinitions" under "actions", but rather under "property"
* Quickfix for Pylint fail with Python 2.6
* Fix for PEP8
* Fix for #336

0.2.26
------

* version bump
* Set pylint version to ensure compatibility with python 2.6
* Set pylint version to ensure compatibility with python 2.6
* fix invoke(skip\_if\_running=True)
* add View.get\_config() and tests covering View.get\_config() as well as View.update\_config()
* add update\_config() to view
* Fix a typo in a function name in queing
* added decode to test to make it work in PY 3.x
* Pylint fixes
* Added use of tree api to node, job, queue and fixed tests
* Added support for JENKINS\_URL env. variable
* Replaced \_poll\_if\_needed with lightweight tree calls
* Changed job and build modules to use tree api
* Low level api change to support tree api
* Linter fixes
* Fixed kerberos request's interface
* Fixing get\_revision with no scm
* adding test to illustrate bug with get\_revision with no scm
* Prepare chunks that are applicable to both Python 2 and 3
* Fix coding style violations
* Fixed Build get\_matrix\_runs() to return only children jobs belong to the parent build number, with unit test
* Add unit tests of artifact strict validation
* Linter fixes
* Fixed kerberos request's interface
* Fixing get\_revision with no scm
* adding test to illustrate bug with get\_revision with no scm
* To parameterize the level of fingerprint validation
* Tiny fixes
* More fixes to parameterized builds - still broken
* Tidy up exceptions file
* Fix redefinition of id
* Lots of fixes
* Cut out some more crap, but noticed that invocation of parameterized builds is broken
* Fix some pep8 violations I had introduced
* Fix many more bugs
* Trying to fix more errors
* Fix way more bugs
* Pep8 fixes + remove bogus imports
* fix a bunch of tests
* reducing the number of errors from the refactor of invocation/queues
* interim commit - refactor of queue & invocation
* Proposed fix for #297

0.2.25
------

* Version bump and update deps to the latest version. Also added a link to requires.io to the readme.rst file
* ensure that tags are pushed at the end of every build

0.2.24
------

* remove duplicated travis link
* remove parts of failing tests
* version bump
* plugin info example
* pep8 tidyup and example of plugin querying
* better support for querying plugins
* tidy up links section
* mega tidy-up of the docs
* add doc upload step to the release script
* tidy up travis files

0.2.23
------

* added additional versions of python to the travis configuration;
* fix some pep8 violations
* added tagging of releases
* added a way of getting the api version from the command-line
* add the \_\_version\_\_ feature to the package
* version bump
* added travis buttons to readme
* proposed fix for #295 - crash during get\_params on maven jobs
* minor version bump
* add release script, fix broken landscape.io image in docs
* revert accidental removel of unittest2 from the setup.py script
* pre release tidy-ups and version bump
* Fix for issue #291
* Example of adding a shell build
* make tests more robust
* add get\_causes
* add comment about depth control
* add job.get\_build\_metadata
* Fix for P3 compatibility
* Disabled "too many branches" in pylint
* Fix for issue #280
* Added better test to job.\_add\_missing\_builds()
* Revert "Bumped Python from 3.3 to 3.4"
* Bumped Python from 3.3 to 3.4
* Added section about Python versions
* Added short delay to let job run for a bit
* add logging url when non 200 OK response
* Added small delay to let jenkins catchup
* Fixed assertion renamed in P3
* build.get\_console() now returns string in all python versions
* Fixed md5 calculation
* Fixed most of the unit tests to work on all python versions
* Fixed assertion renamed in P3
* build.get\_console() now returns string in all python versions
* Fixed md5 calculation
* Fixed most of the unit tests to work on all python versions
* fixes job invoke when no build parameters exist for a particular job
* Removed paragraph about Python 3 branch
* Added re-try when removing job
* Added small delay for test\_parametrized\_build
* Added support for 'del' in Jenkins object: remove job
* Added re-try when removing job
* Added small delay for test\_parametrized\_build
* Added support for 'del' in Jenkins object: remove job
* Set unitest2 to be used only on python 2.6
* Added unittest2 so travis can run tests with recent Python
* Set to use unittest2 library instead of unittest
* Fixed incorrect merge
* Fix for issue #268 and unit tests for it
* Add test to verify fetching of plugin details,
* Formatting fixes
* Small changes in jobs classes
* Simplified get\_job\_url function
* Fixed pylint violations
* Adapt fingerprint to catch HTTPError from requests
* minor fix to exception messages to improve readability
* Add support to create Jenkins object without immediately polling jobs
* Simplified get\_job\_url function
* Fixed pylint violations
* Add a few Jenkins API usage examples
* Adapt fingerprint to catch HTTPError from requests
* minor fix to exception messages to improve readability
* Add support to create Jenkins object without immediately polling jobs
* polling jenkins each time Jobs is initialized
* Added conversions from bytes to strings
* Changed Jenkins URL to download LTS version
* add unit test for multiple top level folders
* Changed Jenkins URL to download LTS version
* resolve\_job\_folders skipping jobs fix
* iteritems -> items Queue -> queue
* basestring, unicode, str compatibility
* exception.message -> str(exception)
* urllib compatibility
* Use print() (with 'from \_\_future\_\_ import print\_function')
* Fix wrong translation of 'except' from python2 to pytho3
* Tying to fix P3 incompatibility
* Added build for Python 2.6
* Added Python 3.3 to this branch build spec
* Added note about experimental nature of this branch
* move the stuff out of readme
* added documentation about getting version info
* Version bump
* Added Aleksey to primary authors list
* Addressing issue/221 - changing depth=1
* making change more pythonic
* removing debug message
* Adding method to expose /computer/api/python
* Move @lechat up the list since he's the most active maintainer
* Remove inactive developers from the main PROJECT\_AUTHORS
* Version bump
* fixing pylint failure
* job.get\_build\_triggerurl update
* get\_build\_triggerurl logic fix
* logging fix for invalid response
* Fix tests
* fix for #237
* Add support for Job Folders (CloudBees Folders Plugin)
* Fixed PyLint errors
* update the create\_view example to reflect the latest views API
* Add the method for retrieving the last stable build
* Correct name of testcase
* Remove sys.path changes added for debugging
* fix for getting scm url and branch for hg repos
* Only process non empty actions while getting job parameters
* Fix pep8 violation
* Make version a property
* Fix pylint warnings
* Update to show version usage
* Add method to return Jenkins Version
* Moved delete\_view\_by\_url back to jenkins object
* fix for block until queued error on jenkins server with prefix / context path, removed urlparse.urljoin which stripped the prefix
* Updated api module
* Fix: error message was not giving job name
* Changed eval() to ast.literal\_eval() for safety
* add unit test for jobs without first build
* Jobs without the first build can throw error
* Removed unused import
* Added another delay to let Jenkins catchup
* Added delay to let Jenkins to catchup with invocation
* Made invocation.get\_job\_number to poll job
* Added build.get\_revision\_branch method (Git only)
* Adding myself as a contributor
* Randomize jenkins http port for systests to avoid collision with default 8080
* Added systests for executor feature. Other fixes
* Added ability to query slaves for executors
* made the wait-period longer for this test
* Some tidy-ups
* Tidy up this test - still quite bad & useless
* Add myself to contributors as requested
* Fixup commit 2b14616c6a9577b4
* Move nose from setup\_requires to test\_requires
* add a new doc
* Changed authors to the more correct 'contributors'
* Added a reminder not to contact authors directly
* added installation notes
* version bump
* Add some more comments
* tidy up imports
* Add warnings to functions with 0% coverage
* Added a borderline useless test to matrix jobs
* added tests for parameterized builds for issue [#178]
* pep8
* respect parameterized builds when checking build requests and add has\_queued\_build method
* add get\_parameters to QueueItem and fix get\_queue\_items\_for\_job in Queue
* get rid of unpleasent use of Super
* disable an annoying pylint warning
* more lint fixes
* Add some missing doctext
* many pep8 violations fixed
* fix up some imports
* still broken
* version bump
* fix up some tests
* resolve conflicts
* tidy ups
* Change id() call to identifier()
* Revert overreaching change
* Remove passing now-deleted parameter (deleted because it was not used in method)
* Rename Result.id() to Result.identifier (builtin id)
* pylint fixes for jenkinsapi\_tests/
* pylint fixes for jenkinsapi/
* Fix None comparisons and arithmetic spacing
* Fix pep8 errors in examples/
* Fix pep8 errors in examples/
* pep8 fixes in test and utils directories
* Fix pep8 errors in setup.py
* Patch tests and utils: exceptions to custom\_exceptions
* Patch tests and utils: exceptions to custom\_exceptions
* Disable I0011 pylint message
* Rename exceptions to custom\_exceptions (because exceptions screws up pylint)
* Disable 'Unexpected keyword arg' error
* Unnecessary lambda?
* Do not use variables that clash with builtins (id, range, type)
* Best guess at using unused variable
* Best guess at why a variable is undefined
* Use longer variable name
* Use longer variable name
* Use good variable name
* Use longer variable name
* Fix use of for-else with no break
* Fool with pylintrc
* Split overlong line
* Lookup in dict
* Move docstring before code
* Modify over-long lines
* Renaming variable that masks one in outer scope
* Initialize instance variable inside ctor
* Fix dangerous default argument
* Add docstring to class
* Remove unneeded argument in internal method
* Split long lines
* Implement methods with dict-like primitives
* Put dict to use
* Fix pylint errors relating to collection implementation
* Use dict.get to simplify test and iteration
* Change class name jenkins\_invoke to JenkinsInvoke (camelcase)
* Add module and class docstrings
* Remove dead file
* Remove unused imports
* Fix pylint error relating to logging
* Add module docstring
* Use list comprehension; split long lines
* Remove unneeded imports
* Fix over-indentation
* Add pylint config
* Add pep8 and pylint to .travis.yml
* Change import for pylint error
* Reformat \_\_all\_\_
* Fix really long lines
* Fix indentation of block
* Remove use of has\_key
* Split lines joined by semicolon
* Fix whitespace around operators
* Add trailing newline in file
* Fix whitespace issues
* add support for FILE parameters
* merge some recent fixes
* Try to be consistent about what type is returned
* Fetch full build list when incomplete
* ensure virtualenv installed and WORKSPACE defined
* Add Plugins#\_\_str\_\_
* Raise NoBuildData when latestBuild etc. not even set
* Temporarily disable a test
* Add kerberos authentication requester using requests\_kerberos
* Keep the same scheme (protocol) as was used in Jenkins constructor in all requests
* Add kerberos authentication requester using requests\_kerberos
* Keep the same scheme (protocol) as was used in Jenkins constructor in all requests
* fix exceptions inheritance
* Build.get\_downstream methods
* add license to setup file
* version bump
* README work
* changing test to check the fix
* updating and fixing tests
* fixing queue url format, the api/python part was duplicated
* fixing get\_last\_build when the build is running and fixing is\_running method as well
* updating with original repo
* Pip 1.4+ compatibility with pytz
* Add Build.get\_matrix\_runs()
* Make test\_jenkins\_artifacts more forgiving
* Version bump
* Fixed last build number in invocation
* Fixed problem with get\_build\_number (Issue #158)
* Removed debug printout
* Add kerberos authentication requester using requests\_kerberos
* Keep the same scheme (protocol) as was used in Jenkins constructor in all requests
* Allow no verification of server certificate when using https
* Added ability to query for installed plugins
* Version bump
* This whole file is disabled for now
* fix for queue delete issue
* Fixed improper requester
* Added Jobs() container (similar to Views())
* More files to ignore
* Chnged views() to views in tests and examples
* Made views() a property, added safety in case view doesn't have subviews
* Added nested-view plugin and systest for it
* Version bump
* Added another way of adding a view and example for it
* Added job removal example
* Moved addjob.xml to make examples working
* Added example for creating nested view
* Fix to get view.views() actually working
* Fixed tests, reformatted View with PEP8, added more tests
* Added ability to create nested views
* Added view.views() method to get nested Views object
* Added code to debug HTTP requests (commented)
* Convert config to str if it is unicode
* tweak to one unit test
* version bump
* Fix for issue #142 copy\_job return value changed from destination job to source job
* build objects now have a get\_console function
* Add an extra test to verify multiple invocation behavior
* Version bump
* handle missing build objects slightly better
* moved the scm test out of systests into unittests
* This test is disabled,it does not actually test all that much about the API, it would be better done as a unittest
* support for binary artifacts
* remove unused import
* move the pinger job config into the config file
* Make nosetests verbose
* an attempt to force the launcher to wait until jenkins is actually launched
* change cannot parse error
* get rid of the ill-coinceived retry function
* delete some krb stuff
* Add a header
* Added a script for all the jenkins activities
* Add a word from our sponsors
* version bump
* apply the requested patch to solve issue #20
* Use requests instead of urllib.urlretrieve for plugins
* Begin test cases for testing jenkins API calls related to the SCM
* jenkins\_launcher can now install plugins
* Fix build.get\_revision() for GIT repositories
* Version bump
* some small fixes
* some small fixes
* inital somewhat working demo of invocations
* Added a note to ask people not to email the developers for support
* Bumped Alexey up the list!
* Version bump
* interim commit - pausing for the night
* refactor continues on invocation;
* more invocation stuff, temporary commit as I move to a new computer
* add how to support us section
* pep8 format
* Moved the empty job config into the config
* stubbing out a new invocation test
* small re-organization, now we have a config file for all the jobs used in systests
* skeleton class of the Invocation object
* pep8 format
* Initial commit of the Invocation object
* Remove a redundant import
* Version bump
* some more test tidy-ups
* better support for starting & stopping jobs
* Add coverage to travis routine
* Version bump
* The launcher can now provide configuration files
* get rid of a pointless function
* new config file - required to launch newer versions of jenkins;
* remove a print statement
* Version bump
* more docs
* some docs
* tidy up warning
* add coverage
* moved the test for war existance into python
* Lock Jenkins to an older version for now
* Added known bugs section
* Fixed typo
* Removed print statement from get\_jobs\_list
* Added test for utils.Requester
* remove a duplication
* fixed a typo in the unittst
* yet another refactor of nodes, this time with better tests
* remove unused import
* remove unused import
* remove unused import
* fix some typos
* we dont need no steenking accessor functions
* small tidy-ups to tests
* delete a bunch of stuff we do not actually need
* corrected a typo
* changed the text
* Added the link to the issue tracker
* Added some test result data
* added the support link
* more examples sorted
* added a bunch of stuff in a new location
* reshuffled a bunch of stuff
* add a bunch more stuff
* corrected one of the api-methods
* Added some more ignores
* queues have been almost entirely refactored, still need docs & examples
* initial refactoring of queues
* make sure that coverage logs are not tracked
* tidy up imports
* add nosetest & other steps to the ANT build
* fix the test name
* version bump
* Coverage is now on by default
* add nosetests settings to the cfg file
* whitespace change
* more invocation stuff, temporary commit as I move to a new computer
* Fixed bug in View.add\_view, added unittests for View
* add how to support us section
* pep8 format
* Moved the empty job config into the config
* stubbing out a new invocation test
* small re-organization, now we have a config file for all the jobs used in systests
* skeleton class of the Invocation object
* pep8 format
* Initial commit of the Invocation object
* Remove a redundant import
* We no longer return 0 for missing builds, now we use an exception
* merge some stuff
* Version bump
* some more test tidy-ups
* better support for starting & stopping jobs
* Fixed update\_config not passing config to Jenkins
* Added tests for Job, reformatted Job code
* Update jenkins.py
* Add coverage to travis routine
* Version bump
* The launcher can now provide configuration files
* get rid of a pointless function
* new config file - required to launch newer versions of jenkins;
* remove a print statement
* Version bump
* more docs
* some docs
* tidy up warning
* add coverage
* moved the test for war existance into python
* Lock Jenkins to an older version for now
* Added known bugs section
* Fixed typo
* Removed print statement from get\_jobs\_list
* Added test for utils.Requester
* remove a duplication
* fixed a typo in the unittst
* yet another refactor of nodes, this time with better tests
* remove unused import
* remove unused import
* remove unused import
* fix some typos
* we dont need no steenking accessor functions
* small tidy-ups to tests
* delete a bunch of stuff we do not actually need
* corrected a typo
* changed the text
* Added the link to the issue tracker
* Added some test result data
* added the support link
* more examples sorted
* added a bunch of stuff in a new location
* reshuffled a bunch of stuff
* add a bunch more stuff
* corrected one of the api-methods
* Added some more ignores
* queues have been almost entirely refactored, still need docs & examples
* initial refactoring of queues
* make sure that coverage logs are not tracked
* tidy up imports
* add nosetest & other steps to the ANT build
* fix the test name
* version bump
* Coverage is now on by default
* add nosetests settings to the cfg file
* whitespace change
* Fix typo
* Significant refactor of views - still need to write documentation & examples
* Get the views stuff out of the main Jenkins unittest. It will be added to it's own test-suite
* make the post logger run on the same port as default jenkins
* make it possible to create views again
* This is the actual correct way to generate a new view. Ignore my previous effort
* Add a low-level example for creating views
* Tidy up the comment
* Remove redundant import
* Add a comment to this example
* get rid of the kerberos stuff - it's commented for now until we can come up with a more workable implementation
* pep8 format & remove redundant imports
* examples/create\_a\_job.py
* small reformatting, cosmetic only
* coverage is now a test dep
* initial coverage + fixes for creating nodes
* remove redundant imports from jenkins launcher
* Get rid of the global - it's not needed any more
* jenkins.create\_job no longer throws exception
* many small fixes
* clear before testing rather than after
* updated readme & setup files
* build fixes
* use dry run to install test-dependancies automagically
* correct the name of the downloady thing
* get rid of ipdb
* re enable systests in travis
* refactor of jenkin launcher
* a more robust way to launch jenkins - intended to be used in the syslaunchers when running on remote CI
* Added Aleksey Maksimov to authors
* temporarily disabled systests in travis until I can figure out why Jenkins does not start
* Remove python 3.3. support
* re-add python 3.3 support
* split out travis commands
* fix a typo
* ci should prefer nosetests
* new home for this file
* this is in the wrong directory
* 2nd rename
* rename the travis config
* setup.py
* added support for travis-ci
* fix some stuff I broke
* run all the tests, not just unittests
* build timestamps are now timezone aware. Added the pytz class as a dependancy
* get the parameterized build unit-test working again
* fixes for parameterized builds and enabling/disabling
* Fixed get\_server\_baseurl, simplified create\_job
* Changed get\_timestamp to return UTC time
* a lower-level example of how parameterized builds work in Jenkins
* move the post-logger out of tests, it's not really a test
* some refactoring of builds
* new config for circle CI support
* Adding API Method - Build Job
* More small fixes to jobs, I've begun work on a test for artifacts however I know this class is very wrong atm
* fixes for getting job configs
* fixes to job starting
* new stuff that I forgot to commit yesterday
* Added tests for create\_view and delete\_view
* Fixed broken create\_view and delete\_view
* Fixed timestamp
* Fixed bug: view.add\_job fails when job parameter contains Job object
* new nodes class + basic tests
* Interim commit - I'm part way through refactoring all the networking stuff. Posts are not yet working
* tweak the readme file
* Add an example + updated installation syntax to the readme file
* Add a lot of helpful and useful stuff to the sublime config
* Remove the id() method from most of the jenkinsapi classes
* more doc tweaks
* Added the sublime project file
* Many fixes to document building - we now use the handy pypi doc upload script
* New datetime behavior for builds as requested
* Some small code tidy-ups, a version bump + correct the datetime behavior for build.get\_timestamp()
* Reworked add\_job Added extra parameter to pass Job object. Uses Job object internally. Changed return values Added documentation
* Cleaned create\_view, added delete\_view
* Added system tests
* Added Jenkins.\_\_contains\_\_ method
* Changed View.add\_job() to actually add job to the view, rather than replace all jobs in the view by that job
* Added get\_description function for jobs
* update documentation link
* Add convenient method for obtaing nested view
* Add support for nested views
* Cause can be given to build with or without params
* Version bump
* Fix typo in variable name
* Use preferred URL scheme for jobs
* Add get\_params and get\_params\_list to Job
* Add missing import
* [FIX] ISSUE 70 - Jenkins need POST params and not GET params
* removing log trace, too verbose
* Queue class to represent the Jenkins queue: lists the items and deletes them
* adding support for stopping a build if it's running
* adding support to delete a job from the queue
* Make kerberos optional. Version bump
* mutable objects mustn't be initialized in method params
* doc comment fixed
* adding STATUS\_SUCCESS constant instead of hardcoded string
* Fixing crash on none value
* Another version bump
* Version bump
* add comments
* fix node url
* set node online/offline
* fix create\_node part
* remove redundat dependencies
* Refactored SCM (Source Code Management) functionality
* Fix: UnboundLocalError: local variable 'fn\_name' referenced before assignment
* kerberos dependency added to setup.py
* getting hg revision from mercurialNodeName because there might be builds with empty changesets list
* Added kerberos authentication
* Added rename\_job function
* Add the ability to create a jenkins job
* Fix typo when passing config to BeautifulSoup()
* Add the SKIPPED result status to constants
* Fix for https://github.com/salimfadhley/jenkinsapi/issues/53
* Fix for https://github.com/salimfadhley/jenkinsapi/issues/54
* merging jollychang @ 070a45e0cd1a5c41d7db49326a2920e44eb73715
* Job API may not include in progress build in the 'builds' array.  Use URL from 'lastBuild' instead
* support for getting and setting SCM branch/source job configuration
* add job enable/disable
* for none
* get\_vsc\_url
* Fix regex search and add support for retrieving artifacts with the same name in different directories
* Add support for authentication over https
* Update README
* Makes delete\_job work with builtin auth by using the proper parameters to get the job
* Add get\_build convenience function
* Typo
* Make final return statement be useful
* Revert "2to3 conversion, untested."
* adding myself to the list of contributors
* 2to3 conversion, untested
* Fix python grammar for 3 compatibility
* Add license doc
* Add MIT license
* a build should have resultset even though having a status failure
* improving performance in the get\_job() method
* adding support to get downstream builds and jobs
* get rev by build
* fix create my view
* typo
* get\_buildnumber\_for\_revision() to support git/hg
* Version bump
* git\_revision() supports git and hg
* add original init arguments
* fix: copy\_job() missing arguments
* fix typo
* Doc version bump
* Version bump
* join url by urlparse.urljoin(
* post should be get\_opener() first
* clean codes
* form login
* Many changes to aid doc-building & release process
* fixing some indentation issues
* adding support to get upstream jobs and builds (direct upstream jobs or master jobs)
* fixed error in Job.is\_running in case when there is no any builds of this job
* support for create my view
* fix for include jobs
* move add job to view from jenkins.py to view.py for nest view
* ignore \*.Ds\_Store
* add get\_jobs\_list,has\_job, add\_job\_to\_view
* add docstring and comment for viewExistsCheck message
* add create view
* add myself to the list of contributors :)
* add delete\_view\_by\_url
* add get\_view\_by\_url for myview or Nested View,what ever
* after delete job renew obj
* copy job return job obj
* copy/delete job
* add raise
* add try expect
* change a var
* add update\_config and post\_data
* build.invoke with block=True: don't assert build succes, but build completion
* fix import issue in build.block\_until\_complete()
* small issue with time import
* FIX: TypeError: 'NoneType' object is unsubscriptable when \_data[buildtype] == None
* Correct IOError on install
* Version bump
* Fix pep8 and open file description
* Fix Credits and Project Authors
* Added Credits
* Fix reStructuredText syntax
* Fix reStructuredText syntax
* Added a required dependency
* Version bump
* Lars Nordin's correction intended to cope with node-names which contain characters requiring HTTP escaping. Thanks for the fix Lars!
* Update jenkinsapi/build.py
* Version bump. Ramon has kindly fixed my sdist import error
* Fixed setup.py
* Added timestamp method to build
* Add build dir to .gitignore
* Yet more corrections required for the 0.1.1 release, including some typos in the doc-building ANT script and the main setup script. Also added an ANT script which automates much of the release process
* Some tweaks required for 1.0.1 release
* more whitespace fixup
* fix validate\_for\_build parameters
* Added the ability to get at the config.xml from a job
* Install fails without utils package which is required by JenkinsBase
* Moved hiturl to base class and implemented reload
* Cleaned up whitespace in examples
* Removing eclipse settings
* Adding .settings to gitignore
* Fixing parameterized job invocation
* Trigger parameterized builds with token as well
* Fixing parameterized job invocation
* fix validate\_for\_build parameters
* return filepath
* More tweaks to the readme
* Add some simple searching examples
* Remove repeating text from readme
* Doc building to zips now working
* Added some doctext
* Added an incomplete example (was from my old version so needs to be updated)
* Added some more docs
* More doc tweaks
* Correct some indentation errors
* Add some items to the main TOC
* More doc related tweaks
* More tweaks, finally getting the hang of Sphinx
* Switching back to Sphinx
* Interim commit - a dummy file in the examples folder to act as a placeholder. Doc generation tweaks
* Small tweaks to docs
* Fixed up some zipping
* Interim commit - adding support for zipping docs
* Interim commit
* Interim commit of epydoc
* Delete no longer needed files
* More tweaks
* Some doc work
* Tidy up of readme
* Ensure build & dist files are ignored
* Tidy ups of the setup & readme files
* Salim is back in the setup.py by request
* Fixup setup.py

0.1
---

* Renamed to jenkinsapi
* Added support for user/pass auth to invoker
* Cleanup of unused code
* Fixing stupid bugs
* Fixing stupid bugs
* First stab at refactoring artifact
* Few bugs left due to old refs to hudson
* Fixed dict creation by using a defaultdict
* Added it to the wrong class :(
* Missing revmap attribute added
* Fixing json import, we have simplejson installed in python-2.5
* Fixed indentation error
* Adapted ruslans changes to allow revision->buildnr caching
* Cleanup
* Added authentification and node classes
* revision methods added to job and build classes
* First stab at node class
* Test
* Added \*.pyc and egg-info to ignore list
* Changed imports and classnames
* Fixing up setup.py refs
* Simplyfied dir setup
* First commit
* PEP-8 compliance run