1. 12 2月, 2019 1 次提交
    • M
      tools: Keep wireshark plugin registration code in git · a87a75e5
      Michal Privoznik 提交于
      In order to be able to dissect libvirt protocol the wireshark
      plugin needs to be registered. So far this plugin registration
      code was generated on every build using a script that was copied
      over from wireshark's tools/ directory.
      
      This is suboptimal, because the way that plugins register changes
      across wireshark releases. Therefore, let's keep the generated
      file in the git, put the command line used to generate the file
      into a comment and remove the script.
      
      This solution allows us to put different registration mechanism
      into one file (under #ifdef-s) and thus compile with wider range
      of wireshark releases.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NJán Tomko <jtomko@redhat.com>
      a87a75e5
  2. 19 4月, 2018 2 次提交
    • D
      po: minimize & canonicalize translations stored in git · a3857dbe
      Daniel P. Berrangé 提交于
      Similar to the libvirt.pot, .po files contain line numbers and file
      names identifying where in the source a translatable string comes from.
      The source locations in the .po files are thrown away and replaced with
      content from the libvirt.pot whenever msgmerge is run, so this is not
      precious information that needs to be stored in git.
      
      When msgmerge processes a .po file, it will add in any msgids from the
      libvirt.pot that were not already present. Thus, if a particular msgid
      currently has no translation, it can be considered redundant and again
      does not need storing in git.
      
      When msgmerge processes a .po file and can't find an exact existing
      translation match, it will try todo fuzzy matching instead, marking such
      entries with a "# fuzzy" comment to alert the translator to take a
      look and either discard, edit or accept the match. Looking at the
      existing fuzzy matches in .po files shows that the quality is awful,
      with many having a completely different set of printf format specifiers
      between the msgid and fuzzy msgstr entry. Fortunately when msgfmt
      generates the .gmo, the fuzzy entries are all ignored anyway. The fuzzy
      entries could be useful to translators if they were working on the .po
      files directly from git, but Libvirt outsourced translation to the
      Fedora Zanata system, so keeping fuzzy matches in git is not much help.
      
      Finally, by default msgids are sorted based on source location. Thus, if
      a bit of code with translatable text is moved from one file to another,
      it may shift around in the .po file, despite the msgid not itself changing.
      If the msgids were sorted alphabetically, the .po files would have
      stable ordering when code is refactored.
      
      This patch takes advantage of the above observations to canonicalize
      and minimize the content stored for .po files in git. Instead of storing
      the real .po files, we now store .mini.po files.
      
      The .mini.po files are the same file format as .po files, but have no
      source location comments, are sorted alphabetically, and all fuzzy
      msgstrs and msgids with no translation are discarded. This cuts the size
      of content in the po directory from 109MB to 19MB.
      
      Users working from a libvirt git checkout who need the full .po files
      can run "make update-po", which merges the libvirt.pot and .mini.po
      file to create a .po file containing all the content previously stored
      in git.
      
      Conversely if a full .po file has been modified, for example, by
      downloading new content from Zanata, the .mini.po files can be updated
      by running "make update-mini-po". The resulting diffs of the .mini.po
      file will clearly show the changed translations without any of the noise
      that previously obscured content. Being able to see content changes
      clearly actually identified a bug in the zanata python client where it
      was adding bogus "fuzzy" annotations to many messages:
      
        https://bugzilla.redhat.com/show_bug.cgi?id=1564497
      
      Users working from libvirt releases should not see any difference in
      behaviour, since the tarballs only contain the full .po files, not the
      .mini.po files.
      
      As an added benefit, generating tarballs with "make dist", will no
      longer cause creation of dirty files in git, since it won't touch the
      .mini.po files, only the .po files which are no longer kept in git.
      
      To avoid creating a single commit 100+MB in size, each language is
      minimized separately in a following commit.
      Reviewed-by: NJán Tomko <jtomko@redhat.com>
      Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
      a3857dbe
    • D
      po: provide custom make rules for po file management · c0a8ea45
      Daniel P. Berrangé 提交于
      Historically we have relied on autopoint/gettextize to install a
      standard po/Makefile.in.in. There is very limited scope for customizing
      this and it also causes a bunch of extra stuff to be pulled into
      configure.ac which potentially clashes with gnulib. Writing make rules
      for po file management is no more difficult than any other rules libvirt
      has, so stop using autopoint/gettextize.
      Reviewed-by: NJán Tomko <jtomko@redhat.com>
      Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
      c0a8ea45
  3. 14 3月, 2018 1 次提交
  4. 22 2月, 2018 5 次提交
  5. 31 1月, 2018 1 次提交
  6. 09 5月, 2017 2 次提交
    • A
      Add YouCompleteMe support · 64b474a8
      Andrea Bolognani 提交于
      YouCompleteMe[1] is a vim plugin that implements semantic
      code completion using libclang.
      
      For non-trivial projects such as libvirt, the plugin needs
      some help figuring out where to find the various header
      files: generate its configuration file at configure time
      so that the plugin works out of the box.
      
      [1] http://valloric.github.io/YouCompleteMe/
      64b474a8
    • A
      Add color_coded support · a50dee9f
      Andrea Bolognani 提交于
      color_coded[1] is a vim plugin that implements semantic
      syntax highlighting using libclang.
      
      For non-trivial projects such as libvirt, the plugin needs
      some help figuring out where to find the various header
      files: generate its configuration file at configure time
      so that the plugin works out of the box.
      
      [1] https://github.com/jeaye/color_coded
      a50dee9f
  7. 26 4月, 2017 2 次提交
  8. 07 4月, 2017 1 次提交
  9. 11 1月, 2017 1 次提交
    • A
      NEWS: Improve building pipeline · be36ea4b
      Andrea Bolognani 提交于
      Currently, building the NEWS file involves using a XSLT stylesheet
      to extract information from the same HTML file that's used on the
      libvirt website.
      
      The process works, but it's quite fiddly in that it requires the
      source HTML to be formatted in a very precise way, and a single
      missing newline can mess up the resulting plain text considerably.
      
      Moreover, the XSLT stylesheet itself encodes a lot of the details
      of converting to plain text in a way that's not necessarily easy
      to understand, tweak or fix.
      
      To improve the process, move all existing entries to a new XML
      file that contains exactly the information we care about in a
      simple structured format, and start generating both the HTML and
      plain text versions of the release notes using XSLT stylesheets
      that can now afford to be almost trivial.
      be36ea4b
  10. 15 12月, 2016 1 次提交
  11. 14 9月, 2016 1 次提交
  12. 26 6月, 2016 1 次提交
    • E
      examples: admin: Add some examples for the new admin APIs · fbb8205d
      Erik Skultety 提交于
      Some of the examples make use of asprintf and strtol functions (to keep
      things simple) which are prohibited to use within our code (enforced by
      syntax-check). Therefore besides adding some examples, this patch also updates
      cfg.mk to exclude examples directory from asprintf and strtol rules, as well as
      updates .gitignore to exclude all the new admin binaries created in the
      'examples' dir.
      Signed-off-by: NErik Skultety <eskultet@redhat.com>
      fbb8205d
  13. 23 6月, 2016 1 次提交
  14. 21 6月, 2016 1 次提交
    • J
      Introduce virsh self-test · 920ab8bd
      Ján Tomko 提交于
      A new hidden command for virsh that will iterate over
      all command groups and commands and print help for every single one.
      
      This involves running vshCmddefOptParse so we can get an error if
      one of the command's option structure is invalid.
      920ab8bd
  15. 16 6月, 2016 1 次提交
  16. 08 6月, 2016 1 次提交
    • J
      Introduce virschematest · cf0974fb
      Ján Tomko 提交于
      Instead of calling xmllint via a shell script, use our virXMLValidator
      API to do it directly via libxml.
      cf0974fb
  17. 14 5月, 2016 1 次提交
    • M
      virtestmock: Print invalid file accesses into a file · 6326865e
      Michal Privoznik 提交于
      All the accesses to files outside our build or source directories
      are now identified and appended into a file for later processing.
      The location of the file that contains all the records can be
      controlled via VIR_TEST_FILE_ACCESS env variable and defaults to
      abs_builddir "/test_file_access.txt".
      
      The script that will process the access file is to be added in
      next commit.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      6326865e
  18. 05 5月, 2016 1 次提交
  19. 03 5月, 2016 3 次提交
  20. 26 4月, 2016 1 次提交
  21. 20 4月, 2016 1 次提交
  22. 30 11月, 2015 2 次提交
    • E
      virt-admin: Introduce first working skeleton · 64095787
      Erik Skultety 提交于
      This patch introduces virt-admin client which is based on virsh client,
      but had to reimplement several methods to meet virt-admin specific needs
      or remove unnecessary virsh specific logic.
      64095787
    • E
      libvirt: introduce libvirt/libvirt-common.h.in · a20b6237
      Erik Skultety 提交于
      As it turned out, we need to share some enums and declarations between
      libvirt.h and libvirt-admin.h, but since our policy forbids direct includes of
      libvirt*.h, there has to be some header exempt from this rule. This patch moves
      the relevant part of code from libvirt.h.in to libvirt-common.h.in. Moreover,
      since there is no need to have libvirt.h generated anymore, introduce a new
      header libvirt.h which was previosly ignored from git and make the common
      header ignored and generated instead.
      a20b6237
  23. 26 11月, 2015 1 次提交
  24. 07 9月, 2015 1 次提交
  25. 05 9月, 2015 1 次提交
  26. 21 8月, 2015 1 次提交
  27. 16 6月, 2015 4 次提交