summaryrefslogtreecommitdiff
path: root/tools
Commit message (Collapse)AuthorAge
* Handle output file correctly when generating a diffEmmanuele Bassi2018-03-21
| | | | | If the output temporary file cannot be atomically renamed to its final destination, we need to copy its contents.
* Do not link eos-profile with libendlessEmmanuele Bassi2018-03-21
| | | | | | | | We don't depend on any specific Endless SDK symbols, and if we link against the SDK library itself we end up enabling the profiling probes; this means we may end up overwriting the profiling data we're trying to open, if by any chance we have `EOS_PROFILE=capture:` in our environment pointing to the profile data we're opening.
* Add machine-readable diff outputEmmanuele Bassi2018-03-21
| | | | | | | | | | If we're using eos-profile-diff in a CI infrastructure then we should not be printing out data in a human readable format, as we may want to interpret the output using scripts at a later point. We can use JSON, instead, and allow redirecting the output to a file; this way, we can store the output as an artifact, collect it, and parse it later.
* Add a diff tool for the eos-profile toolEmmanuele Bassi2018-03-21
| | | | | Compares N probe data files and prints a quick overview with the average timings of all the probes.
* Use the utility function for accessing probesEmmanuele Bassi2018-03-21
| | | | | Now that we have it, we can cut some common code from the convert and show sub-commands.
* Extract the probe parsing functionEmmanuele Bassi2018-03-21
| | | | | | | Both the convert and the show sub-commands for eos-profile have code to turn a GVariant into a profile probe for the v1 of the format. Let's move it out into its own internal utility function.
* Add eos-profile-convert commandEmmanuele Bassi2018-03-21
| | | | | | | | | | If we want to perform additional analysis on a profile capture file it's generally going to be easier to have it in a different format than a GVDB binary blob, especially if we want to use tools that are written in high level languages that may not have access to the GVDB API. The simplest format we can convert to is JSON, which is structured and easy to parse with other languages.
* Programmatically generate command usage and helpEmmanuele Bassi2018-03-21
| | | | This avoids having each command handle it differently.
* Nest profile output a bit betterEmmanuele Bassi2018-01-22
| | | | The spacing makes it look like a typo.
* Move metadata at the top of the outputEmmanuele Bassi2018-01-20
| | | | | There is no ordering guaranteed in the GVDB key names; while this is okay for the probes, the metadata section should be clustered together.
* Fix whitespace in the sample timing messageEmmanuele Bassi2018-01-19
|
* Add missing handler for start time metadataEmmanuele Bassi2018-01-19
| | | | We need to check all meta data keys.
* Beautify the eos-profile-show outputEmmanuele Bassi2018-01-19
| | | | Add more Unicode art.
* Add show command to eos-profileEmmanuele Bassi2018-01-19
| | | | | The `show` command loads a list of profile capture files and prints the metadata and sample summary.
* Add CLI tool for loading profiling apturesEmmanuele Bassi2018-01-18
| | | | | | Captures of profiling data are saved in a binary format, and we need a tool that can load them and turn them into user readable (or machine readable) data.
* Handle HTML with embedded tagsPhilip Chimento2015-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When an element, such as <p>, has a name="translatable" attribute, we also want to grab markup tags inside the element and translate them as well. For example, previously this HTML: <p name="translatable">An embedded <b>tag</b> in a paragraph</p> would result in the following string being extracted: _("An embedded"); However, we want it to be: _("An embedded <b>tag</b> in a paragraph"); This removes the use of BeautifulSoup from the eos-html-extractor script. Unfortunately BeautifulSoup could have done this quite easily, but it does not provide any line number information, which we need. Previously in order to get the line numbers we also used html.parser from Python's standard library, to augment the data we got from BeautifulSoup. However, this issue required html.parser to do all the work that BeautifulSoup did anyway, so there is no reason to use BeautifulSoup anymore. [endlessm/eos-sdk#3291]
* Handle quotes in HTML stringsPhilip Chimento2015-06-18
| | | | | | | When generating the .dummy.c file, eos-html-extractor previously did not escape quotes correctly. [endlessm/eos-sdk#3291]
* Handle excess whitespace in stringsPhilip Chimento2015-06-18
| | | | | | | | | | | | Whitespace between words and tags doesn't matter to HTML. Indeed, the text in a translatable element may be formatted any way over any number of lines, so we normalize all consecutive whitespace to be just one space character and strip whitespace from the beginning and end of the strings. This is so that translators are not confronted with strange newlines and whitespace on Transifex. [endlessm/eos-sdk#3291]
* Ensure stdout is UTF-8Philip Chimento2015-06-05
| | | | | | | | | This gets the underlying byte stream of sys.stdout and wraps it in a UTF-8 encoder. That is then used as the default output file rather than sys.stdout itself, which on Jenkins may not have a default encoding of UTF-8. [endlessm/eos-sdk#3245]
* Set encoding on input and output filesPhilip Chimento2015-06-05
| | | | | | | | Since this is Python 3, we can specify at file-open time what the encoding of the input and output files is to be. This should fix any build errors with non-ASCII characters in an ASCII terminal environment. [endlessm/eos-sdk#3245]
* html-extractor: be more explicit about encoding conversionCosimo Cecchi2015-06-04
| | | | Try to fix a Jenkins test failure.
* Fix help strings of eos-json-extractorPhilip Chimento2015-06-04
| | | | | | | | I noticed that --version gave the wrong description, so I removed the description entirely. I changed the help string to parallel that of eos-html-extractor. [endlessm/eos-sdk#3245]
* Port eos-html-extractor to Python 3Philip Chimento2015-06-04
| | | | | | May as well be forward compatible, while we're touching this. [endlessm/eos-sdk#3245]
* Fix bug with no commentsPhilip Chimento2015-06-04
| | | | | | | eos-html-extractor would crash if it encountered some text comment before it had encountered a comment. [endlessm/eos-sdk#3245]
* Avoid global statePhilip Chimento2015-06-04
| | | | | | Another minor cleanup; TranslatableHTMLParser shouldn't use global state. [endlessm/eos-sdk#3245]
* Avoid unnecessary importsPhilip Chimento2015-06-04
| | | | | | | We don't need to import all of os, just os.path; and urllib was not necessary for reading the file. [endlessm/eos-sdk#3245]
* eos-html-extractor PEP8 and consistency cleanupPhilip Chimento2015-06-04
| | | | [endlessm/eos-sdk#3245]
* Port eos-html-extractor to use argparsePhilip Chimento2015-06-04
| | | | | | For more consistency in command line argument handling. [endlessm/eos-sdk#3245]
* Add eos-html-extractor and m4 filePhilip Chimento2015-06-04
| | | | | | | | | | | | This is taken almost directly from the existing version in eos-english. Cleanups to follow in subsequent commits. Previously the m4 code was in two separate macros, but since they were much the same, I combined them into one macro. This also adds a very minimal test for eos-html-extractor; basically as a very quick regression test for the cleanups to follow. [endlessm/eos-sdk#3245]
* Remove ancient test runnerPhilip Chimento2015-04-17
| | | | | | | This test runner dates from even before eos-jasmine, and is not used anywhere. [endlessm/eos-sdk#3054]
* Merge pull request #493 from endlessm/issues/1620Cosimo Cecchi2014-01-24
|\ | | | | First round of dev vm preparation scripts
| * Added automatic install of eos-dev if it's not on the VMSrdjan Grubor2014-01-24
| | | | | | | | [endlessm/eos-sdk#1620]
| * Removed need for bash on setting the personalitySrdjan Grubor2014-01-24
| | | | | | | | [endlessm/eos-sdk#1620]
| * Instead of softlinking ansible-playbook, we copy it into binSrdjan Grubor2014-01-24
| | | | | | | | [endlessm/eos-sdk#1620]
| * Changed the remote cache dir to be more standardSrdjan Grubor2014-01-24
| | | | | | | | [endlessm/eos-sdk#1620]
| * Removed obsolete filesSrdjan Grubor2014-01-24
| | | | | | | | [endlessm/eos-sdk#1620]
| * Applied a better implementation of setting the dev folder on the desktopSrdjan Grubor2014-01-22
| | | | | | | | [endlessm/eos-sdk#1620]
| * Cleaned the scripts up to not be split by sudo prefix by using sudo variable ↵Srdjan Grubor2014-01-21
| | | | | | | | | | | | per task [endlessm/eos-sdk#1620]
| * Moved copying of desktop links to a separate scriptSrdjan Grubor2014-01-21
| | | | | | | | [endlessm/eos-sdk#1620]
| * Renamed setup_other_tools script as it could be ambiguousSrdjan Grubor2014-01-21
| | | | | | | | [endlessm/eos-sdk#1620]
| * Removed the apply in desktop update script since it wasn't neededSrdjan Grubor2014-01-17
| | | | | | | | [endlessm/eos-sdk#1620]
| * Updated the READMESrdjan Grubor2014-01-16
| | | | | | | | [endlessm/eos-sdk#1620]
| * Moved ansible directory into toolsSrdjan Grubor2014-01-16
| |
* | Use #!/usr/bin/env in our shebangsSam Spilsbury2014-01-14
|/ | | | [endlessm/eos-sdk#475]
* Merge pull request #431 from endlessm/issues/335P. F. Chimento2013-12-10
|\ | | | | #335 Integrated JSON extraction utility
| * Integrated JSON extraction utilityFernando2013-12-10
| | | | | | | | | | | | | | | | | | | | | | | | The utility used in eos-english and eos-programming-app was integrated and installed as part of the SDK CR comments addressed include: - Integrated new facilities available on GTK - Removed duplicate prototype declaration - Reformatted CLEANFILES var declaration - Used configure.ac to get @PACKAGE_VERSION@ - Added version() and usage() utilities [endlessm/eos-sdk#335]
* | Merge pull request #434 from endlessm/issues/432Rory MacQueen2013-12-10
|\ \ | |/ |/| Use System.exit() and System.programInvocationName
| * Use System.exit() and System.programInvocationNamePhilip Chimento2013-12-09
| | | | | | | | | | | | | | In GJS >= 1.38, these facilities are available. This removes the workarounds that we had for lack of these facilities. [endlessm/eos-sdk#432]
* | Subcommand 'eos-application-manifest init'Philip Chimento2013-12-09
| | | | | | | | | | | | | | | | | | This implements the 'init' subcommand of the application manifest tool, which creates a new manifest in the current directory. [endlessm/eos-sdk#154] [endlessm/eos-sdk#154]
* | eos-application-manifest: Fix bug in help formattingPhilip Chimento2013-12-09
| | | | | | | | [endlessm/eos-sdk#154]