# changelog

author: biao716.wang@samsung.com
changelog:
  - Update tizen version to tizen20220803
  - Always retry 3 times to download if download fail.
  - Add logic to re-downloading packages in reorder step if some packages is missed!


author: biao716.wang@samsung.com
changelog:
  - Update tizen version to tizen20230112
  - add new build option: --nocumulate which can allow build without cumulatve build.


author: biao716.wang@samsung.com
changelog:
  - Update tizen version to tizen20230301
  - Fix issue: chromium-efl package build failure on Tizen 5.5.


author: biao716.wang@samsung.com
changelog:
  - Update tizen version to tizen20230510
  - hide credentials information in logs.
  - ignore non-existance of qemu binfmt file


author: biao716.wang@samsung.com
changelog:
  - Update tizen version to tizen20231101
  - Fix build error for https://bugs.tizen.org/browse/DEVT-440.
  - download: enable proxy support for HTTPS
  - Support different interpreters in prein/postin scriptlets
  - Support build with openSUSE15.x distro


author: huayong.xu@samsung.com
changelog:
  - Update tizen version to tizen20231129
  - Use the correct lua to excutxe scripts
  - Update qemu-arm-static depend to support risc


author: jakir.h@samsung.com
changelog:
  - Update tizen version to tizen20240722
  - Add arguments '--failures-to-rebuild' and '--rebuild-count' to support rebuild when build fails
  - Rebuild the package if build failed because of qemu crash.
  - Cleanup the build root as default action if build system is broken.
  - build: use ulimit -d instead of ulimit -v
  - umount with -f option


author: jakir.h@samsung.com
changelog:
  - Update tizen version to tizen20260224
  - Update tizen version to tizen20250722
  - Support to skip to create src.rpm for certain packages during gbs full build


author: SoonKyu Park <sk7.park@samsung.com> - 0.10.1
changelog:
  - Enable RPM_WEAK_DEPS_SUPPORT and ENABLE_LEGACY_WEAKDEPS
    * Wed 09 2014 Shuai Fu <shuai01.fu@samsung.com> - 0.10.0
  - add debian


author: Biao Wang <biao716.wang@samsung.com> - 0.10.2
changelog:
  - Add module path for _createrepo.so
  - Fix pylint error for createrepo_c
  - Remove filter function cr_is_primary to keep the same behavior as createrepo
  - Fix ubuntu16.04 import _createrepo_c error


author: Xu Huayong <huayong.xu@samsung.com> 0.16.25
changelog:
  * fix bug: When there are multiple specs file in one package,
      if build again after chaning another commitID,
      only build with one spec, other build are skipped.


author: Jakir Hossain <jakir.h@samsung.com> 0.16.26
changelog:
  - Upgrade to 0.16.26.
  - Add arguments '--failures-to-rebuild' and '--rebuild-count' to support rebuild when build fails.
  - Recognize aarch64ilp32 architecture


author: Md. Jobairul Hassan <jobairul.h@samsung.com> 0.16.27
changelog:
  - Upgrade to 0.16.27.
  - Merge "Recognize aarch64ilp32 architecture" into devel
  - Merge "Disable to open new pts when run bash command with sudo." into devel
  - Disable to open new pts when run bash command with sudo.


author: Md. Jobairul Hassan <jobairul.h@samsung.com> 0.16.28
changelog:
  - Upgrade to 0.16.28.
  - use perl-bssolv version up than 0.37.0
  - Support to skip to create src.rpm for certain packages during gbs full build


author: Biao Wang <biao716.wang@samsung.com> 0.25.29
changelog:
  * upgrade to gbs v0.25.29, which contains the following features:
    * New feature and enhancements added:
    - Install bsr into default location.


author: Biao Wang <biao716.wang@samsung.com> 0.25.30
changelog:
  * upgrade to gbs v0.25.30, which contains the following features:
    * New feature and enhancements added:
    - hide credentials information in logs.
    - ignore non-existance of qemu binfmt file.
    - revert to generate reverse dependency.


author: Biao Wang <biao716.wang@samsung.com> 0.26.1
changelog:
  * upgrade to gbs v0.26.1, which contains the following features:
    * New feature and enhancements added:
    - Add support for openSUSE15.2
    - Port code from python2.x to python3.x version
    - Fix some bugs during gbs run time


author: Xu Huayong <huayong.xu@samsung.com> 0.27.1
changelog:
  * upgrade to gbs v0.27.1, which contains the following features:
    * New feature and enhancements added:
    - Add new option for gbs to import source package list.
    - Upgrade librpm-tizen version to 4.14.
    - Add warning message for encoded password in gbs config message.
    - Update default gbs.conf template.


author: Biao Wang <biao716.wang@samsung.com> 2.0.1
changelog:
  * upgrade to gbs v2.0.1, which contains the following features:
    * New feature and enhancements added:
    - Add support for openSUSE15.2
    - Port code from python2.x to python3.x version
    - Fix some bugs during gbs run time


author: Huayong Xu <huayong.xu@samsung.com> 2.0.2
changelog:
  * upgrade to gbs v2.0.2, which contains the following features:
    * New feature and enhancements added:
    - Fix run error: xml.etree.ElementTree.Element' object has
      no attribute getchildren
    - Remove unnecssary file: test-requires


author: Huayong Xu <huayong.xu@samsung.com> 2.0.3
changelog:
  * upgrade to gbs v2.0.3, which contains the following features:
    * New feature and enhancements added:
    - Fix build errors on Ubuntu 24.04.
    - Fix the issue that M2Crypto module is not found on opensuse 15.5.
    - Ignore the pylint warning of unbalanced-tuple-unpacking in utils script
    - Fix the failed test cases which caused by gbs upgrade.


author: Jakir Hossain <jakir.h@samsung.com> 2.0.4
changelog:
  * upgrade to gbs v2.0.4, which contains the following features:
    * New feature and enhancements added:
    - Add arguments '--failures-to-rebuild' and '--rebuild-count' to support rebuild when build fails
    - require the latest version of osc


author: Saulin Tuhin <s.tuhin@samsung.com> 2.0.5
changelog:
  * upgrade to gbs v2.0.5, which contains the following features:
    * Bug fix:
    - Fix regex to support alpha-numeric release version in .spec


author: Md. Jobairul Hassan <jobairul.h@samsung.com> 2.0.6
changelog:
  * upgrade to gbs v2.0.6, which contains the following features:
    * New feature and enhancements added:
    - Merge "Support AArch64 ILP32 architecture" into devel


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> tizen/0.6.22-20150206
changelog:
  - Rebase on top of upstream version 0.6.22
  - Experimental support for BitBake
    * Introduce import-bb tool.
      This is the first tool in an effort of enabling gbp in the BitBake build
      environment. Gbp-import-bb is a tool for importing packages from a
      BitBake-based "combined" distro repository into individual per-package
      Git repositories.
    * Introduce pq-bb tool.
      This is a tool for managing patch-queues for packages maintained in the
      BitBake packaging format (.bb recipes).
    * Introduce buildpackage-bb tool.
      Initial version of the tool for building BitBake packages from Git.
      NOTE: The buildpackage-bb tool itself is able to operate even without an
      initialized BitBake build environment although the build likely fails in
      this case. However, this makes it possible to export the packaging meta
      data, for example.
    * Introcude clone-bb tool.
      This is a new tool for helping to clone remote per-package Git
      repositories when working in BitBake-based "full distro" build
      environment. This is useful in the case that individual packages are
      actually maintained in per-package Git repositories (like Tizen). That
      is, the full distro repository that the developer operates in is
      composed of the packaging meta data from the individual per-package
      repositories. When willing to contribute to a package the developer
      would use clone-bb to clone the correct per-package repository and make
      his changes there.
      NOTE: clone-bb uses GBP_PACKAGING_REPO variable to determine the remote
      repository URI. This variable should be defined in the package recipes
      in order to make clone-bb usable.
    * Introduce submit-bb tool.
      This is a Tizen-specific tool for creating and pushing special submit
      tags.
  - pq-rpm: better error message
  - buildpackage-rpm: look for remote upstream branches.
    Consider remote branches, too, while looking for the upstream branch
    when trying to guess if a package is native or not.
  - rpm packaging changes
    * enable CentOS 7.
    * include python egg-info in -common.
  - rpm: suppress stderr when unpacking src.rpm
  - UpstreamSource: suppress stderr from tar in _determine_prefix()
  - patchseries: strip numbering when guessing subject from filename
  - Changes in logging
    * don't propagate to ancestor loggers
    * don't initialize handlers in GbpLogger init.
      Better compatibility with 3rd party modules that have their own logging
      initializations.
  - Features/fixes in GitRepository
    * GitRepository/__git_inout: correctly handle input error
    * GitRepository.create_tag: add 'annotate' argument.
      For forcing the creation of annotated tags. Causes the an editor to be
      spawned if no message is given.


author: SoonKyu Park <sk7.park@samsung.com> tizen/0.7.5-20161231
changelog:
  - Fix diff_status() for renames and copies
  - Adapt git-merge option when git version greater then 2.9
  - Disable test_pristine_tar unittest case


author: Biao Wang <biao716.wang@samsung.com> tizen/0.9.27-20231101
changelog:
  - Port code from python2.x to python3.x
  - Support openSUSE 15.2 build
  - Fix some defects during runtime


author: Guan Junchun <junchunx.guan@intel.com> - 1.0
changelog:
  - bump to version 1.0
  - refine a remotebuild case
  - modify import and conf cases
  - update import cases because of pristine-tar
  - fix press Ctrl+C twice bug
  - fix the color dispaly bug of failed cases
  - Add pristine-tar support case
  - Rename modules
  - add and update build cases
  - Add a case to test building cyclic dependency issue
  - Support create dummy project from several spec files
  - Update Install and Upgrade test cases
  - if press ctrl+c in running, it can give a report too
  - Fix spec in test-packages.tar.gz
  - Revert "Shuffle cases before testing rather than sort them"
  - fix remotebuild test cases synatax error
  - modify import cases
  - fix submit cases syntax error found by CaseParser
  - fix two gbs remotebuild cases:
  - add three import negative test cases
  - Add a script to create dummy project for testing
  - remove the old itest data before install itest
  - Get sudo password from env variable GBS_SUDO_PASSWORD
  - Support case interactive input by section __QA__
  - Add CaseParser to parse case text
  - update remotebuild cases and test-packages
  - Revert "update remotebuild cases and update test packages"
  - update remotebuild cases and update test packages
  - Print log to stdout if -vv
  - do not use /var/tmp/.gbs.log as tmp log file
  - Refine export cases
  - update test cases
  - Squeeze tset-packages.tar.gz
  - Squeeze IMPORT dir in test-packages.tar.gz
  - Shuffle cases before testing rather than sort them
  - Fix cases sort issue
  - Modify check method of import cases
  - Revert "Modify check method of import cases"
  - Modify check method of import cases
  - Send test report and logs to server
  - Add two manuall cases: install / upgrade
  - refine --spec case in remotebuild
  - Split TestReport class into TextReport and HTMLReport
  - Move utils.env_set to TestSuite class
  - Check exit code of steps to set testing pass.
  - Refactor abort_with_ctrl_c()
  - Add two export cases and one import case
  - update build case
  - Refactor code deal with ctrl c
  - delete 2 invalid cases
  - update conf cases
  - update and add build cases
  - Fix get_local_ipv4() for Fedora 17
  - Remove explicit use of sys.argv
  - update build case
  - return the log's path instead of log content of failed case
  - refine time_cost display
  - chang echo GBS_TEST_PASSED to a line
  - update and add new cases
  - Change itest directory hierarchy
  - Use ifconfig to get local ip address
  - Add message to show log dir and report file
  - when press CTRL+C, choose to continue next case or abort
  - delete needless time variables
  - fix bugs
  - Fix some pylint issues
  - Change style of import lines
  - Calcuate time cost in GbsTest.run()
  - delete proxy set function
  - Format README in consist indent
  - refine docs of classes and functions
  - add gbs vim plugin
  - add README
  - update build repo
  - add specfile
  - code cleanup
  - add cases to test build, remotebuild profile option
  - add setup.py
  - fix bugs
  - add multiple profiles conf and localrepo conf
  - Module separation
  - new way to find cases
  - show more friendly test results
  - update test cases
  - modify submit test cases
  - update build cases
  - update build testcases
  - delete all cat commands in remotebuild cases
  - Revert "version 0.1.1 is more general than enter key"
  - update remotebuild and submit test cases
  - modify export and import cases
  - update test-packages
  - Merge "add remotebuild and submit cases"
  - add build cases
  - support running multiple test suits and cases for gbstest
  - update changelog cases
  - add remotebuild and submit cases
  - fix debug info bug
  - add import and export cases
  - add conf test cases
  - add chroot test cases
  - add changelog test cases
  - when gbs import, send enter defaultly
  - support bash tab completion for gbs
  - add html.py
  - new report function
  - add gbstest script
  - update fake package
  - Add test packages
  - add config fixtures
  - Initial itest project
  - update build case and conf file
  - in some os /tmp/ is not exist
  - move workspace to /tmp/
  - change gbs result to pass or fail
  - version 0.1.1 is more general than enter key
  - print debug info, when executing
  - fix quote bug


author: Guan Junchun <junchunx.guan@intel.com> - 1.1
changelog:
  - Support debian building
  - bump to version 1.1
  - add an osc certificat to resolve the obs certification issue
  - Add --tizen option for create_proj
  - Add a jenkins job script: clean up unwanted files, users in test vms
  - Change default value of GBS.ENABLE_COVERAGE to false
  - Fix bug introduced by coverage support.
  - Fix some pylint warnings.
  - Merge "add a build case for buildroot uid gid issue #685" into devel
  - Merge "Test submit --tag #596" into devel
  - Merge "update mic ks files, no user authentication for repos" into devel
  - update mic ks files, no user authentication for repos
  - modify mic cases bases on itest's design about bug #644
  - add a build case for buildroot uid gid issue #685
  - Add a jenkins job script: clean up tmp projects in the tizen.org OBS
  - Merge "Guess component from case path. #664" into devel
  - Merge "Remove leading string "mic" from TARGET_VERSION in MIC ENV" into devel
  - Guess component from case path. #664
  - Merge "modify mic cases bases on itest's design about bug #644" into devel
  - Remove leading string "mic" from TARGET_VERSION in MIC ENV
  - Merge "add a build case for incremental feature." into devel
  - Test submit --tag #596
  - Add coverage report. #680
  - Merge "add a build case for #535 on pm" into devel
  - add a build case for incremental feature.
  - Add pexpect event when obs server certificate failed verification
  - add a build case for #535 on pm
  - Merge changes If97ad020,I0662f7a7 into devel
  - Merge "Fix useradd issue on openSUSE" into devel
  - Merge "Add a build case for target arch check" into devel
  - Add more tab completion
  - Support gbs clone and pull subcommand tab completion
  - Merge "Cleanup export cases" into devel
  - Cleanup export cases
  - Fix useradd issue on openSUSE
  - Move "Issue related" section to the end of report
  - Merge "Add more options in gbs.bash" into devel
  - Merge "update export cases for new patch" into devel
  - Merge "Update README for __steps__. #644" into devel
  - Add a build case for target arch check
  - update export cases for new patch
  - Add more options in gbs.bash
  - Merge "Fix two build cases" into devel
  - Update README for __steps__. #644
  - update build cases for target arch
  - Fix two build cases
  - Update build cases
  - Cleanup import cases
  - add new feature cases for #594
  - Merge "Change default value of SUDO_PASSWD" into devel
  - Modify more cases to adapt pipefail option. #644
  - update cases 's summary tag. fix #667
  - Add set -o pipefail at the beginning of case script.
  - update cases from i686 to i586
  - update and add cases on pm from #83 to #90
  - Merge "Add MIC folder to Itest, including MIC test cases and related files." into devel
  - Merge "export cases for testing write permission #617" into devel
  - Merge "Change cases to adapt bash -e. #644" into devel
  - Change cases to adapt bash -e. #644
  - Change default value of SUDO_PASSWD
  - Fix KeyError in web page
  - Merge "update and add cases on pm from #91 to #112" into devel
  - export cases for testing write permission #617
  - Add MIC folder to Itest, including MIC test cases and related files.
  - Merge "generate report as Ctl-c when jenkins termnate job" into devel
  - Merge "add web server configuration in README" into devel
  - Merge "add 2 import cases for #641, #649" into devel
  - Merge "Update cases for #340, #467, #332, #396" into devel
  - Update cases for #340, #467, #332, #396
  - update and add cases on pm from #91 to #112
  - add 2 import cases for #641, #649
  - Merge "add a case for 185" into devel
  - Merge "update and add cases on pm from #76 to #82" into devel
  - add web server configuration in README
  - add a case for 185
  - Update app.py according to latest format of report.
  - Merge "update and add cases on pm from #71 to #75" into devel
  - generate report as Ctl-c when jenkins termnate job
  - Merge "Generate a bash script to run case commands. #644" into devel
  - update and add cases on pm from #71 to #75
  - update and add cases on pm from #76 to #82
  - Generate a bash script to run case commands. #644
  - Test gbs import in different user at same machine #574
  - Merge "Change suffix of manual cases into txt" into devel
  - Change suffix of manual cases into txt
  - update case for OS difference
  - Support customized HTML report for ENV
  - Adding ENV support and pack GBS into an ENV
  - Merge "support multiple issue numbers in __issue__ section. #632" into devel
  - Merge "update and add cases on pm from #69 to #70" into devel
  - update and add cases on pm from #69 to #70
  - Merge "update and add cases on pm from #56 to #60" into devel
  - Merge "update and add cases on pm from #31 to #35" into devel
  - update and add cases on pm from #56 to #60
  - Merge "test gbs export about #635" into devel
  - Merge "update and add cases on pm from #36 to #55" into devel
  - update and add cases on pm from #31 to #35
  - update and add cases on pm from #19 to #24
  - avoid ~ not expanded by quotes
  - test gbs export about #635
  - update and add cases on pm from #36 to #55
  - Merge "Remove hardcode expecting strings and add them into cases." into devel
  - Merge "update and add cases on pm from #25 to #30" into devel
  - support multiple issue numbers in __issue__ section. #632
  - Remove hardcode expecting strings and add them into cases.
  - Merge "update and add cases on pm from #4 to #13" into devel
  - update and add cases on pm from #25 to #30
  - Print error message when rm testspace failed by invalid passwd.
  - Do not install data/ plugin/
  - Remove "gbs" string from docstring
  - update and add cases on pm from #4 to #13
  - Rename env variable from GBS_SUDO_PASSWD to ITEST_SUDO_PASSWD
  - Merge "Remove test-packages.tar.gz" into devel
  - Merge "Update rb cases" into devel
  - Remove test-packages.tar.gz
  - Merge "add issue ID for some cases" into devel
  - Update rb cases
  - Remove script are_gits_clean since it duplicate with AssertClean
  - add issue ID for some cases
  - Merge "Add GBS vars and assert to avoid hard code in case" into devel
  - Merge "update case deleting useless action" into devel
  - Add GBS vars and assert to avoid hard code in case
  - copy data to running dir in testspace, not to link
  - use root authority to delete old testspace
  - update case deleting useless action
  - Merge "Encode html report to utf8" into devel
  - Merge "Update changelog cases" into devel
  - Update submit cases
  - Merge "Update conf cases" into devel
  - Merge "update export and import cases" into devel
  - Update conf cases
  - Update changelog cases
  - update export and import cases
  - Merge "Update build cases" into devel
  - Update build cases
  - Merge "modify some rb cases and add oscrc config file" into devel
  - modify some rb cases and add oscrc config file
  - Merge "Refactor HTML report code." into devel
  - Refactor HTML report code.
  - Add chroot cases to test different repos
  - Add issue number information to HTML report
  - Only allow one instance of itest to run within the same workspace
  - Merge "Change default uploading url" into devel
  - Fix minor problem in utils
  - Change default uploading url
  - Merge "No need care libyaml-perl" into devel
  - Fix grep issue in remotebuild test cases
  - No need care libyaml-perl
  - Sync report to remote periodically
  - Merge "modify two export cases and one import case" into devel
  - Merge "Change error output message in changelog, conf, submit negative cases" into devel
  - Merge "change the cases's grep msg to match the output of gbs" into devel
  - Merge "update test_build_profile_negative.case" into devel
  - change the cases's grep msg to match the output of gbs
  - Change error output message in changelog, conf, submit negative cases
  - Merge "add major gbs deps packages's version html report" into devel
  - update test_build_profile_negative.case
  - modify two export cases and one import case
  - Merge "update case test_build_noinit_without_buildroot" into devel
  - add major gbs deps packages's version html report
  - update case test_build_noinit_without_buildroot
  - add new export cases of for-gbs-0.12 branch
  - Dynamic summary page on web server
  - Log running status in workspace.
  - change all cases's name to be *.case
  - Encode html report to utf8
  - Create individual env for each test case.
  - Change TestSuite class-attr WORKSPACE and LOGDIR to instance-attr
  - Merge "Add shell script are_gits_clean" into devel
  - Merge "Change extra cases and add two testing specs" into devel
  - Change extra cases and add two testing specs
  - Merge "Refine remote --commit case" into devel
  - Merge "modify 9 export cases since default no merge" into devel
  - Refine remote --commit case
  - modify 9 export cases since default no merge
  - Add shell script are_gits_clean
  - update build cases for changing i586 to i686
  - Merge "modify import cases for default no merge feature" into devel
  - modify import cases for default no merge feature
  - Merge "clean old repos cache in fedora before yum makecache" into devel
  - Merge "Check upstream and pristine-tar branch in remote #551" into devel
  - Merge "modify test_build_clean_repo.gbs (fail in x86_64)" into devel
  - Check upstream and pristine-tar branch in remote #551
  - Test long submit request message #553
  - modify test_build_clean_repo.gbs (fail in x86_64)
  - clean old repos cache in fedora before yum makecache
  - Merge "Add a build case for issue 552 on pm" into devel
  - Merge "add a case for testing --clean-repos" into devel
  - Merge "Update two test cases" into devel
  - Update two test cases
  - add a case for testing --clean-repos
  - Add a build case for issue 552 on pm
  - fix a syntax error
  - add a export case for testing --packaging-dir
  - modify import case gbs_im_from_spec_case.gbs
  - add to delete alpha and m68k miscs to avoid restart
  - use upgrade.sh to test gbs upgrade
  - Merge "modify test_build_keeppacks_incremental.gbs" into devel
  - Merge "Add a new case for issue 365 on pm" into devel
  - Merge "refine a rb case and a build case" into devel
  - modify test_build_keeppacks_incremental.gbs
  - Merge "Fix conf test cases bugs" into devel
  - Fix conf test cases bugs
  - Merge "Test gbs build x86_64 #527" into devel
  - Merge "update gbs remotebuild cases" into devel
  - Merge "modify case gbs_im_spec_negative.gbs" into devel
  - Merge "modify export cases about pristine-tar" into devel
  - modify case gbs_im_spec_negative.gbs
  - refine a rb case and a build case
  - Add a new case for issue 365 on pm
  - Add one import case to check applying patches automaticlly
  - Merge "simplify the output of itest of -v option" into devel
  - modify export cases about pristine-tar
  - Merge "Update incremental cases for #465" into devel
  - Test gbs build x86_64 #527
  - simplify the output of itest of -v option
  - update gbs remotebuild cases
  - Delete BuildArch in the test spec files
  - Merge "add more import cases about pristine-tar" into devel
  - Update incremental cases for #465
  - Merge "update GBS build --spec cases" into devel
  - Merge "Add build case for --define option" into devel
  - Merge "Set default base_prj=Tizen:Main in remotebuild conf #539" into devel
  - Merge "add 8 export cases about upstream and pristine-tar" into devel
  - Merge "modify export cases due to --spec changed" into devel
  - Set default base_prj=Tizen:Main in remotebuild conf #539
  - add 8 export cases about upstream and pristine-tar
  - Add build case for --define option
  - add 3 build cases for --packing-dir
  - Merge "Add 2 keep-packs cases" into devel
  - update GBS build --spec cases
  - Update changelog spec test cases #485
  - modify export cases due to --spec changed
  - Merge "Search cases data from current directory firstly" into devel
  - add more import cases about pristine-tar
  - Merge "add three cases about keep packs feature" into devel
  - add three cases about keep packs feature
  - Add 2 keep-packs cases
  - Search cases data from current directory firstly
  - Add more completion in gbs.bash
  - Add Makefile
  - Add static web page
  - Refine test result info
  - Add .gitignore
  - Add comments about cases order
  - Add RSA test cases
  - update build increamental and add noinit cases
  - add gbs test cases
  - No need reboot while clean system


author: Huang, Hao <hao.h.huang@intel.com> - 1.6
changelog:
  * Merge "Raise Timeout error if no output for a while." into devel
    * Raise Timeout error if no output for a while.
    * Remove ksctrl scripts
    * Print log to sys.stdout instead of /dev/fd/1
    * fix ksctrol can't find image
    * fix xml report can not display
    * Merge "Generate xUnit report for ksctrl." into devel
    * Add python-urlgrabber as requirement.
    * Generate xUnit report for ksctrl.
    * Fetch KS files starting from images/ URL.
    * Add script ksctrl
    * Ignore keyword if it's not a component name.
    * Remove feature of auto retry when test failed
    * Remove --install-layout=deb in setup.py
    * Merge "Rewrite code of locking testspace" into devel
    * Rewrite code of locking testspace
    * Remove a useless function in itest.utils
    * Strip redundant white space from distribution info.
    * Support selecting platforms in cases.
    * Skip a test when a SkipTest exception is raised.
    * Support xunit XML format of report(#1065).
    * ctrl-c can't break runtest(#1099).
    * Remove HTML report and auto sync feature
    * Change requirement from "pexpect<2.5" to "pexpect"
    * Change name to itest-core for deb package
    * Changing package name from itest to itest-core
    * Ignore .osc and tarball in packaging dir
    * Add spec and dsc to build rpm and deb packages
    * Moving itest core framework from itest project


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 4.10.91.tizen20121215
changelog:
  - Enable lua
  - update package Provide info
  - Add a provide tag to make gbs depend on new changes
  - packaging: fix Makefile
  - Install Tizen macros


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 4.11.0.1.tizen20130618
changelog:
  - fix segmentation fault error while parsing spec
  - Bump the log level of "unexpanded script" msg
  - Prevent execution of arbitrary scripts


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 4.11.0.1.tizen20130618
changelog:
  - lua: fall through failed lua scripts
  - lua: Enable Lua
  - Ignore bad expressions in %if conditionals


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> tizen-tools/4.11.0.1.tizen20140530-20140723
changelog:
  - Rebase on latest Tizen 3.0
  - packaging: enable lua 5.2 for openSUSE
  - rpm-packaging: enable customized autoreq


author: Huayong Xu <huayong.xu@samsung.com> - 2.0.2
changelog:
  * Fix the issue that mic lost dependency file in docker
    * Fix the mic can't create image into specified folder which defined
      in default mic config
    * Add the error message while no qemu for mic chroot
    * Adjust the format of Notification


author: Huayong Xu <huayong.xu@samsung.com> - 2.0.3
changelog:
  * Fix build errors on Ubuntu 24.04
    * Add new section 'runscript_out_bootstrap' for kickstart to run script
      on host pc after image created.
    * Replace SafeConfigParser with ConfigParser which is dropped in
      python3.12
    * Replace setup module from distuils.core to setuptools
    * Ignore the pylint warning of raising-bad-type and
      unbalanced-tuple-unpacking in connection and grabber script
    * Fix mic create image error: Rpmdb checksum is invalid:
      dCDPT(pkg checksums)


author: Saulin Tuhin <s.tuhin@samsung.com> - 2.0.4
changelog:
  * Enable mixed mode for formatting on Btrfs filesystems to support small devices
    * If arch is riscv64, pass the QEMU_RESERVED_VA environment variable to install_root
    * load filesystem kernel module on host pc
    * Support zstd compression in mic to pack image


author: Jakir Hossain <jakir.h@samsung.com> - 2.0.6
changelog:
  * Fix run error for erofs file system when erofs option have compress level
    * erofs - fix error in case of no erofsopts
    * Fix error on erofs image creation


author: Jakir Hossain <jakir.h@samsung.com> - 2.0.7
changelog:
  * Merge "Fix mic build error for btrfs and cpio fstype" into devel
    * Fix mic build error for btrfs and cpio fstype
    * Add support erofs module load


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 8092a5a
changelog:
  - setup.py: parse version from spec
  - tests: enable xml nose report in config
  - CachedRepository: option to not update submodules
  - Utilize non-bare mirrored git clone
  - tests: more extensive unit tests


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.2
changelog:
  - gbp.conf: set tag format
  - Fix gbp arguments
  - Add support for Deb packages and selective building
    Support for generating (exporting) Debian source package with gbp.
    Also, adds new options 'rpm' and 'deb' for selecting whether to generate
    rpm and/or deb packaging sources. These options are tri-state with
    'auto' trying to determine if the corresponding packaging is available.
  - Support for config files
    Initial support for reading service configuration from a file. For now,
    there is only one configuration setting, i.e. 'repo-cache-dir'.
    All configuration settings can be overridden with environment variables,
    if needed. By default, the service tries to read
    '/etc/obs/services/git-buildpackage' and '~/.obs/git-buildpackage'.
  - tests: more isolation for test cases
  - packaging: refine unit tests
  - pylint fix: rename global variable logger to LOGGER
  - CachedRepo: do force clean when updating working copy
  - CachedRepo: do force checkout when updating working copy
  - tests: run every testcase with clean orig repo


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.3
changelog:
  - Release 0.3
  - tests: split repocache tests into separate file
  - Move the Git repository cache in separate subpackage


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.4
changelog:
  - Release 0.4
  - repocache: change cached repo dir name
    Change the cached repo directory from "<base>/<reponame>_<hash>" to
    "<base>/<hash>/<reponame>". That is, add another directory level to the
    cache. This change makes gbp (and gbs) see the same project directory
    name as the end-users in their normal workflow.
    NOTE! Repository cache should be manually cleaned after this commit, in
    order to get rid of the stale, unused caches.
  - tests: make sure to restore dir permissions
  - repocache: more verbose debug messages


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.5
changelog:
  - Release 0.5
  - Run GBP in a separate thread
  - Config option to set user/group for running GBP
    Add new options to the configuration file to be able to set the
    user/group under which git-buildpackage(-rpm) is being run.
    This is done by spawning a child process, then changing UID/GID
    and calling gbp there.
  - tests: utilize ok_() and eq_() from nose tools
    In order to getter better assert messages.
  - Config file option for gbp tmp directory
    Add a new config file option for configuring the temporary directory
    that git-buildpackage uses when it is run.
  - Fixes/features in repocache
    * CachedRepo: make attribute variables private
    * CachedRepo: implement close() method
      For invalidating the object without the need of deleting it.
    * MirrorGitRepository: methods for setting/getting ref
    * MirrorGitRepository: fix git-fetch failure when local HEAD is invalid
      Git fetch fails if local HEAD is a non-symbolic ref and points to a
      non-existent object.
      We get into this state in CachedRepo if the remote HEAD is invalid (e.g.
      points to a non-existent branch) as we forcefully invalidate local HEAD
      in this case, too.


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.6
changelog:
  - Release 0.6
  - New option for creating a git-meta file
    Add a new 'git-meta' option for writing metadata about the exported
    treeish into a text file in json format. The argument for the option is
    the filename to write into.
    NOTE! Be careful with the filename: the service fails if the filename
    already exists in the exported files.
  - Internal features:
    * MirrorGitRepository: add get_tag_info() method
    * utils: new function for writing git tree-ish meta informat


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.7
changelog:
  - Release 0.7
  - utils: handle child exceptions in fork_call() more gracefully
    Create a new exception type GbpChildBTError for handling exceptions that
    happen in the function that is called in fork_call(). Allows to catch
    exceptions in the called "child" function and print out correct
    traceback.
  - Handle gbp crashes gracefully
    Catch unhandled exceptions in gitbuildpackage[-rpm] in which case print
    a traceback and return an error.
  - Don't read default config files if --config is given
  - utils: change fork_call() to return a callable
  - Include tag name in the git treeish meta data
    Add tag name to the information returned by the
    MirrorGitRepository.get_tag_info() method.  This information will also
    be automatically written by the write_treeish_meta() function, and thus,
    available in the meta data exported when using --git-meta.
  - Include tag list in the git treeish meta data
    List all annotated tags pointing at the exported commit and tag object.
    Adds a new 'tags' key (an array) under the 'commit' and 'tag' keys.
  - MirrorGitRepository:
    * Add list_tags() method for getting tags pointing at a certain object.
    * Fix error handling in set_ref() method
  - Disable git-buildpackage desktop notifications
  - packaging: -utils subpackage depends on gbp-repocache
  - Add git-meta option in to the .service file
  - Add deployment instructions
  - Better unit test coverage
  - Some minor internal code refactoring


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.8
changelog:
  - Release version 0.8
  - repocache: use standard logging module and interface
    Do not automatically use gbp-specific logging. Thus, let the user of
    this module to setup logging.
  - Implement repocache-adm command line tool
    This command line tool is intended for managing a gbp repository cache.
    It will contain functionality for e.g. checking, cleaning up and
    repairing the repository cache.
    The tool is supposed to be runnable on a live system.
    This initial implementation only contains a rudimentary 'stat' command
    for printing repocache status/statistics.
  - repocache: suppress some confusing git output
  - packaging: add missing dependency
    The main package requires -utils subpackage.
  - repocache: clean out stale submodules, too
  - repocache: implement refs hack for fetching
  - Add config option for git-fetch refs hack
    New config file option 'repo-cache-refs-hack' for enabling the refs hack
    in repocache. The option is disabled, by default.
    Enabling the hack makes it possible to fetch/clone remote repositories
    that have branches (refs/heads/*) that point to tag objects. This may
    encountered with Gerrit repositories - "pure" Git repositories managed
    by Git tools shouldn't have such branches as Git sanity checking
    prevents them (which is the reason this hack is needed).
  - Add an example config file
  - Add README file


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 0.9
changelog:
  - Release version 0.9
  - Use --git-no-build argument for gbp buildpackage-rpm
  - Use the standard logging module
  - repocache: don't set initial logging level
  - Set GID before UID
  - More fine-grained exception handling when setting UID/GID
  - Don't crash if UID is not found in pw database
  - Set correct ownership of the exported files
  - New exit code (4) indicating gbp crashes


author: adrian@suse.de
changelog:
  - update to 0.134.0
    * Enables new maintenance submissions for new OBS 2.3 maintenance model
    * Fixes srcmd5 revisions in submit request, when link target != submission target
  - From NEWS file:
    - patchinfo call can work without checked out copy now
    - use qemu as fallback for building not directly supported architectures
    - "results --watch" option to watch build results until they finished building
    - fixes injection of terminal control chars (bnc#749335)(CVE-2012-1095)
    [#]
    [#] Features which requires OBS 2.3
    [#]
    - support dryrun of branching to preview the expected result. "osc sm" is doing this now by default.
    - maintenance requests accept package lists as source and target incidents to be merged in
    - add "setincident" command to "request" to re-direct a maintenance request
    - ask user to create "maintenance incident" request when submit request is failing at release project
    - "osc my patchinfos" is showing patchinfos where any open bug is assigned to user
    - "osc my" or "osc my work" is including assigned patchinfos
    - "osc branch --maintenance" is creating setups for maintenance


author: adrian@suse.de
changelog:
  - update to 0.134.1
    * adding unlock command
    * maintenance_incident requests get created with source revision of package


author: adrian@suse.de
changelog:
  - update to 0.135.0
    * request accept is offering now to forward submit request if it is a devel area like webui does
    * support archlinux builds (requires OBS 2.4)
    * support maintenancerequest from local checkout
    * bugfixes for review handling, result watching, gnome-keyring


author: adrian@suse.de
changelog:
  - update to 0.135.1
    * do not forward submit requests to targets which link to request target
    * fix creator name in forwarded message


author: suse-tux@gmx.de
changelog:
  - update to 0.136.0:
    * prefer TLS v1.1 or v1.2 if available
    * declined is considered to be an open state (that is "osc rq list" also
      shows declined requests)
    * added support to move files across packages via "osc mv" (fixes issue #10)
    * various bugfixes


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 1.28
changelog:
  - Fixes Bug #998
    * Mangle PAX headers when using posix tar format
    * Use posix tar format by default
    * implement tar format guessing


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> 1.28
changelog:
  - Workaround for broken pristine-tar branches in Tizen
    Makes it possible to checkout tarballs from certain broken pristine-tar
    branches created with buggy versions of Tizen pristine-tar on openSUSE.
  - update packaging for new gbs release


author: Markus Lehtonen <markus.lehtonen@linux.intel.com> tizen/1.32-20150212
changelog:
  - Relax the tar dependency by allowing any version of tar to be used.
    It turned out that in Tizen we do not have the problem the version
    restriction was originally put for.


author: SoonKyu Park <sk7.park@samsung.com> 1.35
changelog:
  - Version bump to 1.35
  - Fix xdelta upgrade to xdelta3 but left pristine-gz
  - Add debian ignore and packaging ignore in .gbp.conf


author: Ed Bartosh <ed@ed.fi.intel.com> 0.2.26
changelog:
  - Only process non empty actions while getting job parameters
  - Add support for Job Folders (CloudBees Folders Plugin).
  - Fix tests.
  - get_build_triggerurl logic fix
  - job.get_build_triggerurl update
  - making change more pythonic
  - Addressing issue/221 - changing depth=1
  - Added Aleksey to primary authors list
  - Version bump
  - added documentation about getting version info
  - move the stuff out of readme
  - Added note about experimental nature of this branch
  - Added Python 3.3 to this branch build spec
  - Added build for Python 2.6
  - Tying to fix P3 incompatibility
  - Fix wrong translation of 'except' from python2 to pytho3
  - Use print() (with 'from __future__ import print_function')
  - urllib compatibility
  - exception.message -> str(exception)
  - basestring, unicode, str compatibility
  - iteritems -> items Queue -> queue
  - resolve_job_folders skipping jobs fix
  - Changed Jenkins URL to download LTS version
  - add unit test for multiple top level folders
  - Changed Jenkins URL to download LTS version
  - Added conversions from bytes to strings
  - polling jenkins each time Jobs is initialized
  - Add support to create Jenkins object without immediately polling jobs.
  - minor fix to exception messages to improve readability.
  - Adapt fingerprint to catch HTTPError from requests
  - Add a few Jenkins API usage examples
  - Fixed pylint violations
  - Simplified get_job_url function
  - Add support to create Jenkins object without immediately polling jobs.
  - minor fix to exception messages to improve readability.
  - Adapt fingerprint to catch HTTPError from requests
  - Fixed pylint violations
  - Simplified get_job_url function
  - Small changes in jobs classes
  - Formatting fixes
  - Add test to verify fetching of plugin details,
  - Fix for issue #268 and unit tests for it
  - Fixed incorrect merge
  - Set to use unittest2 library instead of unittest
  - Added unittest2 so travis can run tests with recent Python
  - Set unitest2 to be used only on python 2.6
  - Added support for 'del' in Jenkins object: remove job
  - Added small delay for test_parametrized_build
  - Added re-try when removing job
  - Added support for 'del' in Jenkins object: remove job
  - Added small delay for test_parametrized_build
  - Added re-try when removing job
  - Removed paragraph about Python 3 branch
  - fixes job invoke when no build parameters exist for a particular job
  - Fixed most of the unit tests to work on all python versions
  - Fixed md5 calculation
  - build.get_console() now returns string in all python versions
  - Fixed assertion renamed in P3
  - Fixed most of the unit tests to work on all python versions
  - Fixed md5 calculation
  - build.get_console() now returns string in all python versions
  - Fixed assertion renamed in P3
  - Added small delay to let jenkins catchup
  - add logging url when non 200 OK response
  - Added short delay to let job run for a bit
  - Added section about Python versions
  - Bumped Python from 3.3 to 3.4
  - Revert "Bumped Python from 3.3 to 3.4"
  - Added better test to job._add_missing_builds()
  - Fix for issue #280
  - Disabled "too many branches" in pylint
  - Fix for P3 compatibility
  - add job.get_build_metadata
  - add comment about depth control
  - add get_causes
  - make tests more robust
  - Example of adding a shell build
  - Fix for issue #291
  - pre release tidy-ups and version bump
  - revert accidental removel of unittest2 from the setup.py script
  - add release script, fix broken landscape.io image in docs
  - minor version bump
  - proposed fix for #295 - crash during get_params on maven jobs
  - added travis buttons to readme
  - version bump
  - add the __version__ feature to the package
  - added a way of getting the api version from the command-line
  - added tagging of releases
  - fix some pep8 violations
  - added additional versions of python to the travis configuration;
  - tidy up travis files
  - add doc upload step to the release script
  - mega tidy-up of the docs
  - tidy up links section
  - better support for querying plugins
  - pep8 tidyup and example of plugin querying
  - plugin info example
  - version bump
  - remove parts of failing tests
  - remove duplicated travis link
  - ensure that tags are pushed at the end of every build
  - Version bump and update deps to the latest version. Also added a link to requires.io to the readme.rst file
  - Proposed fix for #297
  - interim commit - refactor of queue & invocation
  - reducing the number of errors from the refactor of invocation/queues
  - fix a bunch of tests
  - Pep8 fixes + remove bogus imports
  - Fix way more bugs.
  - Trying to fix more errors.
  - Fix many more bugs
  - Fix some pep8 violations I had introduced.
  - Cut out some more crap, but noticed that invocation of parameterized builds is broken.
  - Lots of fixes
  - Fix redefinition of id.
  - Tidy up exceptions file.
  - More fixes to parameterized builds - still broken.
  - Tiny fixes.
  - adding test to illustrate bug with get_revision with no scm
  - Fixing get_revision with no scm
  - Fixed kerberos request's interface
  - Linter fixes
  - adding test to illustrate bug with get_revision with no scm
  - Fixing get_revision with no scm
  - Fixed kerberos request's interface
  - Linter fixes
  - Low level api change to support tree api
  - Changed job and build modules to use tree api
  - Replaced _poll_if_needed with lightweight tree calls
  - Added support for JENKINS_URL env. variable
  - Added use of tree api to node, job, queue and fixed tests
  - Pylint fixes
  - added decode to test to make it work in PY 3.x
  - Fix a typo in a function name in queing
  - add update_config() to view
  - add View.get_config() and tests covering View.get_config() as well as View.update_config()
  - fix invoke(skip_if_running=True)
  - Set pylint version to ensure compatibility with python 2.6
  - Set pylint version to ensure compatibility with python 2.6
  - version bump


author: mc@suse.de
changelog:
  - declare $ sign as a safe character in url paths to prevent
    escaping /$RCE/ which lead into problems with token auth
    (bnc#902416)
    * declare-dollar-sign-as-safe-in-urlquote.patch
    * python-urlgrabber-3.9.1-set-SSL_VERIFYHOST-correct.dif
  - set curl option SSL_VERIFYHOST correct


author: Matej Cepl <mcepl@suse.com>
changelog:
  - Update to the upstream version 4.0.0:
    * Port to Python 3 rocket
    * Add curl_obj option to grabber
    * Throw an obvious error message when urlgrabber-ext-down is
      missing when attempting to use external downloader
    * Use setuptools for setup.py instead of distutils
  - Remove merged patches:
    * declare-dollar-sign-as-safe-in-urlquote.patch
    * python-urlgrabber-3.9.1-set-SSL_VERIFYHOST-correct.dif
    * python-urlgrabber-3.9.1-preserve-queryparams-in-urls.patch


author: Tomáš Chvátal <tchvatal@suse.com>
changelog:
  - Update to 4.1.0:
    * Fix confused license header to clarify licensing
    * Fix Python 3 compatibility with urlgrabber-ext-down
    * Support HTTP CONNECT with reget. BZ 1585596
    * Fix for usage of _levelNames from logging module
    * Fix issue when URLGRABBER_DEBUG is not an integer on Python 3
    * Revise setup.py to remove need for extra setup-time dependencies
    * setuptools: Update Development Status to Production/Stable


author: Petr Gajdos <pgajdos@suse.com>
changelog:
  - %python3_only -> %python_alternative
  - urlgrabber-ext-down is expected to reside under /usr/libexec


author: sk7.park@samsung.com
changelog:
  - Add depands packae qemu
  - Add the qemu-arm-binfmt (qemu-arm64-binfmt)
  - Upgrade tizen version to tizen20161231


author: yan11.meng@samsung.com
changelog:
  - Fix deb upload failed issue on launchpad
  - change struct ucontext to ucontext_t
  - use ucontext_t instead struct ucontext.
  - fix pylint errors for qemu-arm-static
  - fix build error in xUbuntu_19.10
  - fix build error for ubuntu20.04


author: huayong.xu@samsung.com
changelog:
  - Merge branch 'sandbox/xuwc/devel-riscv' into devel
  - Remove unnecessary depends for debian.
  - Generate binfmt for arm, arm64 and riscv.
  - Update the build depends.
  - Update changelog of debian
  - Add debian
  - Add rpmlintrc and changelog in spec file.
  - Fix soft link failed issue in spec file.
  - Use soft link to replace binfmt copy in spec file.
  - Update spec file.
  - Add spec file for version 5.2.0
  - Upgrade version to 5.2


author: Ed Bartosh <eduard.bartosh@intel.com> 0.1.1
changelog:
  - Fixed crash when rejecting broken package
  - obs.py: Raise RepaException instead of ObsError
  - Catch osc exceptions in obs.py:get_projects. Fixes TINF-480
  - Add Submitter and commit id to SR comment. Fixes TINF-468
  - Update man page regarding grouping. Fixes TINF-492
  - Added docstring to show_images function
  - Added obs and download urls to 'repa list' output
  - Added --project command line option


author: Ed Bartosh <eduard.bartosh@intel.com> 0.2
changelog:
  - Implement --processes options for repa list (Fixes: #1762)
  - obs/get_projects: retry OBS operations
  - Reduce amount of information in repa list output
  - Implement repa info (Fixes: #1195)
  - Make project mandatory config option (Fixes: #1763)
  - Add configuration file info to the man page (Fixes: #1764)
  - Mention --section in man page
  - Update repa version in the man page
  - Update man regarding global options
  - Repa list: show correct status for submissions with unresolvable packages
    (Fixes: #1776)
  - Minor refactoring of get_status
  - Get rid of --regexp command line option (Fixes: #1772)
  - Implement Colorizer class
  - Implement --colorize option (Fixes: #1765)
  - Fixed formatting of output for repa list
  - Implemented --showurls option (Fixes: #1789)
  - list: Added 'blocked' status
  - Added 'waiting for images' status to repa list output
  - Fix check for common packages (Fixes: #1847)
  - repa info: Fix build status reporting
  - Create one SR for all packages in submission (Fixes: #1386)
  - obs: Implement get_srs function
  - Add -group suffix to the path
  - obs.py: Refactored get_project API
  - common.py: Introduced get_prerelease_projects API
  - Implement repa diff
  - Correct man page for accept and reject subcommands
  - Convert repa.changes into rpm format
  - group: disable publishing when aggregating packages


author: Ed Bartosh <ed@ed.fi.intel.com> 0.3
changelog:
  - group: disable publishing when aggregating packages
  - Skip conflicting submissions when creating a group
  - group: Implemented parallel package aggregating (Fixes: #1955)
  - info: Excluded 'disabled' build status from the list
  - list: Implement --ignore command line option
  - create_sr: Fix unicode issue (Fixes: #1979, #TINF-618)
  - group: Remove binary package check
  - Implement --noaggregate command line and config option (Fixes: #1990)
  - List all projects in submitrequest message
  - Drop 'Commit' keyword from the submitrequest info
  - Reworked repa diff (Fixes: #1869)
  - Implement --base option for repa list
  - Pylinted codebase
  - Output SR for rejected/accepted submissions


author: Ed Bartosh <ed@ed.fi.intel.com> 0.4
changelog:
  - fix pylint error
  - group: remove --force option
  - Rename command info -> show
  - Implement rebuild subcommand
  - Implement lock/unlock subcommand
  - Implement remove subcommand
  - list: add build time
  - Implement --edit command line option


author: SoonKyu Park <sk7.park@samsung.com> 0.5
changelog:
  - Do not accept aggregate packages
  - Do not update source of _link packages even if an SR is accepted


author: Yang Zhang <y0169.zhang@samsung.com> 0.6
changelog:
  - Add argument of repa list, Show submission reference project in project : --refprj
  - Implement repa update, repa update can change the reference project in target project
  - Fix first SR acceptance problem


