== 1.5.3 / 2012-06-01
* Features
* Support for "prefixless" CSS selectors ~, > and + like jQuery
supports. #621, #623. (Thanks, David Lee!)
* Attempting to improve installation on homebrew 0.9 (with regards
to iconv). Isn't package management convenient?
* Bugfixes
* Custom xpath functions with empty nodeset arguments cause a
segfault. #634.
* Nokogiri::XML::Node#css now works for XML documents with default
namespaces when the rule contains attribute selector without
namespace.
* Fixed marshalling bugs around how arguments are passed to (and
returned from) XSLT custom xpath functions. #640.
* Nokogiri::XML::Reader#outer_xml is broken in JRuby #617
* Nokogiri::XML::Attribute on JRuby returns a nil namespace #647
* Nokogiri::XML::Node#namespace= cannot set a namespace without a
prefix on JRuby #648
* [JRuby] 1.9 mode causes dead lock while running rake #571
* HTML::Document#meta_encoding does not raise exception on docs with
malformed content-type. #655
* Fixing segfault related to unsupported encodings in in-context
parsing on 1.8.7. #643
* [JRuby] Concurrency issue in XPath parsing. #682
commit 40e6cde2d3e1a4f9f6bc14a243b22b4ae3311ca2
Author: Thomas Leitner <t_leitner@gmx.at>
Date: Wed May 9 19:53:47 2012 +0200
Updated release notes and version number
doc/news/release_0_13_6.page
doc/sidebar.template
lib/kramdown/version.rb
man/man1/kramdown.1.erb
commit 7f66dca331f78d84ef22c489c755360b304cb41f
Author: Thomas Leitner <t_leitner@gmx.at>
Date: Tue May 8 21:20:46 2012 +0200
Fixed bug RF#29557: Parsing fails with lists with empty list item
If a list item is completely empty, it needs to be handled specially,
which is done now.
lib/kramdown/converter/kramdown.rb
lib/kramdown/parser/kramdown/list.rb
test/testcases/block/08_list/special_cases.html
test/testcases/block/08_list/special_cases.text
commit ac00ea8ea590ece6c7a6c53b30920114f349b79b
Author: Thomas Leitner <t_leitner@gmx.at>
Date: Tue May 8 20:02:43 2012 +0200
Fixed problem with CDATA section in non-XHTML pages
The HTML parser does not parse CDATA in script tags and
therefore the CDATA tags were displayed in MathJax output.
By commenting out the CDATA tags (with LaTeX comment syntax)
we avoid this problem.
lib/kramdown/converter/html.rb
lib/kramdown/parser/html.rb
test/testcases/block/15_math/normal.html
= Change Log
Below is a complete listing of changes for each revision of FasterCSV.
== 1.5.5
* Removed setup.rb due to licensing concerns.
* Updated and clarified Copyright notices.
* Improved stray quoting error message (patch by Edvard Majakari).
* Improved line ending detection algorithm (patch by Alexey Smolianinov).
2012-05-12 (1.7.3)
* Work around Rubinius encoding issues using iconv for conversion instead.
2012-05-11 (1.7.2)
* Fix some encoding issues, that cause problems for the pure and the
extension variant in jruby 1.9 mode.
2012-04-28 (1.7.1)
* Some small fixes for building
* Backport gnulib change to deal with removal of gets function.
This is a build-time-only fix. (Mentioned in Fedora bug #821791)
* Version 1.1.1 - May 2012, by Martin von Gagern
* Added Serbian translation.
* Updated Danish and Vietnamese translations.
* Work around a bug in the formatting of the man page.
(Debian bug #669340)
It often happens that you have text data in Unicode, but you need
to represent it in ASCII. For example when integrating with legacy
code that doesn't support Unicode, or for ease of entry of non-Roman
names on a US keyboard, or when constructing ASCII machine identifiers
from human-readable Unicode strings that should still be somewhat
intelligeble (a popular example of this is when making an URL slug
from an article title).
Note that this module generally produces better results than simply
stripping accents from characters (which can be done in Python with
built-in functions). It is based on hand-tuned character mappings
that for example also contain ASCII approximations for symbols and
non-Latin alphabets.
This is a Python port of Text::Unidecode Perl module by Sean M.
Burke.
2012-05-13 Rasqal Version 0.9.29 Released
Supports all of SPARQL 1.0 by passing 100% of the approved tests
Added support for XSD date
Made XSD dateTime and XSD date equality and comparison work
Make limit and offset check work properly in a subquery
Correctly handle errors during aggregation expressions evaluation
Fix blank node generation when made in a CONSTRUCT to match SPARQL
Added SPARQL 1.1 draft UUID() and STRUUID() support
Requires Raptor 2.0.7+
RDQL support will be removed in the next release (0.9.30)
Made other fixes and improvements including fixing reported issues:
0000493, 0000494 0000504
Release 2.0.3 - 2012/05/29
--------------------------
Improvements
^^^^^^^^^^^^
* [doc] Added about release procedure.
* Removed restriction that the max number of opened files is 4096.
* [experimental] Added table plugin.
* [doc] Added more descriptions about :doc:`/commmands/select` command.
* [doc] Made execution example copy & paste friendly.
* [windows] Supported build with Visual Studio 2010 Express and
CMake. See :doc:`/install/windows` about details.
* [doc][solaris] Added a document about building on Solaris.
See :doc:`/install/solaris` about details.
* [doc][yum] Updated epel-release package version.
[Reported by IWAI, Masaharu]
* [doc][cenos6] Disabled Repoforge for Munin for CentOS 6.
[Reported by IWAI, Masaharu]
* Started distributing source archive in zip format.
* [munin] groonga_dist Munin plugin supported an object that has
separated files.
* Started using Travis CI.
* [yum] Changed RPM package name that provides yum repository from
groonga-repository to groonga-release to follow RPM package name
convension such as centos-release and fedora-release.
Fixes
^^^^^
* [doc] Fixed a command to update yum repository.
[Suggested by IWAI, Masaharu]
* [deb] Fixed a bug that log_repoen command in logrotate uses wrong protocol.
* Fixed broken ERROR tag in XML response.
[#1363] [GitHub#13] [Patch by IWAI, Masaharu]
* Fixed a bug that grn_ctx isn't fully cleared by grn_ctx_fin().
* Fixed a bug that ``&!`` set operation doesn't work with grouped
expression. [#1372]
* Fixed a bug that a record key registered via index source isn't normalized.
* Minor changes to the documentation
* Strip potentially dangerous ENTITY declarations in encoded feeds
* feedparser will now try to continue parsing despite compression errors
* Fix issue 321 a little more (the initial fix missed a code path)
* Issue 337 (`_parse_date_rfc822()` returns None on single-digit days)
* Issue 343 (add magnet links to the ACCEPTABLE_URI_SCHEMES)
* Issue 344 (handle deflated data with no headers nor checksums)
* Issue 347 (support `itunes:image` elements with a `url` attribute)
* Fix mistakes, typos, and bugs in the unit test code
* Fix crash in Python 2.4 and 2.5 if the feed has a UTF_32 byte order mark
* Replace the RFC822 date parser for more extensibility
* Issue 304 (handle RFC822 dates with timezones like GMT+00:00)
* Issue 309 (itunes:keywords should be split by commas, not whitespace)
* Issue 310 (pubDate should map to `published`, not `updated`)
* Issue 313 (include the compression test files in MANIFEST.in)
* Issue 314 (far-flung RFC822 dates don't throw OverflowError on x64)
* Issue 315 (HTTP server for unit tests runs on 0.0.0.0)
* Issue 321 (malformed URIs can cause ValueError to be thrown)
* Issue 322 (HTTP redirect to HTTP 304 causes SAXParseException)
* Issue 323 (installing chardet causes 11 unit test failures)
* Issue 325 (map `description_detail` to `summary_detail`)
* Issue 326 (Unicode filename causes UnicodeEncodeError if locale is ASCII)
* Issue 327 (handle RFC822 dates with extraneous commas)
* Issue 328 (temporarily map `updated` to `published` due to issue 310)
* Issue 329 (escape backslashes in Windows path in docs/introduction.rst)
* Issue 331 (don't escape backslashes that are in raw strings in the docs)
Due to unicode in one of the PLIST files, the package failed during packaging
due to a libarchive translation error on DragonFly. Apparently Linux suffers
from this as well.
The last update was 9 years ago. Updating to current version fixes the
problem for DragonFly. Linux restriction removed under the assumption that
it also works now.
Due to unicode in one of the PLIST files, the package failed during packaging
due to a libarchive translation error on DragonFly. Apparently Linux suffers
from this as well.
The last update was 9 years ago. Updating to current version fixes the
problem for DragonFly. Linux restriction removed under the assumption that
it also works now.
Due to unicode in one of the PLIST files, the package failed during packaging
due to a libarchive translation error on DragonFly. Apparently Linux suffers
from this as well.
The last update was 9 years ago. Updating to current version fixes the
problem for DragonFly. Linux restriction removed under the assumption that
it also works now.
The FlightCrew files all use DOS line endings.
The patches all use unix line endings.
All source files have to have the line endings converted before applying
a patch to them. The last patch added 2012-01-16 to fix build with Boost
wasn't applied to a converted source file and thus the package failed in
the patch phase.
Three main modules and some supporting program files are contained. For
more details read following POD documentations:
Text::LineFold - Line Folding for Plain Text
Unicode::GCString - String as Sequence of UAX #29 Grapheme Clusters
Unicode::LineBreak - UAX #14 Unicode Line Breaking Algorithm
1.57 17 Dec 2011
[FIXES]
- Test for undef streams instead of truth, to allow streams like '' or '0'
Thanks to Thorsten Schwander for the patch
- Failed to parse PDF 1.5 cross reference streams where a
1024-byte boundary happened to fall between "endstream" and
"endobj" do to a logic error.
Thanks to Thorsten Schwander for the report and fix suggestion
1.56 13 Dec 2011
[FIXES]
- Workaround for corrupt PDFs that have 'n' records in their index that point to byte zero
of the file. Silently treat those as 'f' records. Yet another case of Acrobat supporting
broken PDFs, so the rest of us have to support them too...
Thanks to Mark Hunnibell for a sample PDF that demonstrated the problem
Pkgsrc changes:
---------------
Deal with /usr/bin/env python
Upstream changes:
-----------------
0.9.9 final 120131
- FEATURE: Implemented API for ``MarginRule`` objects inside ``CSSPageRule``, see http://www.w3.org/TR/css3-page/. You can also use e.g. ``CSSPageRule['@top-left']`` to retrieve the MarginRule it it is set etc. All dict like methods should be there. If a margin is set twice or more all properties are merged into a single margin rule. Double set properties are all kept though (see below).
- FEATURE: ``parseStyle()`` has optional parameter ``validate=False`` now too to disable validation (default is always ``True``).
- FEATURE: ``CSSStyleDeclaration.setProperty`` has new option ``replace=True``. if True (DEFAULT) the given property will replace a present property. If False a new property will be added always. The difference to `normalize` is that two or more properties with the same name may be set, useful for e.g. stuff like::
background: red;
background: rgba(255, 0, 0, 0.5);
which defines the same property but only capable UAs use the last property value, older ones use the first value.
+ CHANGE: @rules attribute ``atkeyword`` value is now normalized. The actual keyword (example ``@IMPorT``) is kept and is optionally reserialized but in the example ``atkeyword == '@import'``
- BUGFIX: 'auto' is now an invalid CSSPageRule pagename.
- BUGFIX: Fixed issue for GoogleAppEngine (GAE) which somehow handles codecs differently. ``parseUrl`` should work now.
0.9.8
-----
0.9.8 final 111210
- FEATURE: Feature Request (#4) to be able to disable validation of a stylesheet has been implemented. Add Parameter ``validate=False`` for parsing.
+ BUGFIX: Fixed#5 Unicode escaping inside strings. Thanks to Simon Sapin
+ BUGFIX: The integer is optional in counter-reset and counter-increment, and not only on the first counter. Thanks to Simon Sapin
+ BUGFIX: Fix for unicode replacements by Denis Bilenko, thanks! https://bitbucket.org/cthedot/cssutils/pull-request/1/fix-a-bug-in-regex-which-accidentally
- IMPROVEMENT: ``parseStyle`` moved to CSSParser, thanks to Simon Sapin
0.9.8a3 110727
+ BUGFIX: Fixed validation of ``size`` property (thanks to Simon Sapin)
+ BUGFIX: Fixed Issue #55 (thanks to Simon Sapin): `outline-color` property was missing from validation.
+ BUGFIX: Fixed resolution of encoding detection of a stylesheet which did not use @charset in certain circumstances (mainly when imported sheets use different encoding than importing one which should be quite rare actually).
- FEATURE: Added ``URIValue.absoluteUri`` (thanks to Simon Sapin)
- FEATURE: Issue #53 feature request: Added new Preference option ``cssutils.ser.prefs.indentClosingBrace``. Defines if closing brace of block is indented to match indentation of the block (default) oder match indentation of selector.
- FEATURE: Feature request: Added new Preference option ``cssutils.ser.prefs.omitLeadingZero``. Defines if values between -1 and 1 should omit the 0, like ``.5px``. Minified settings do this, else 0 is kept by default.
+ CHANGE (minor): Some error messages have slightly changed due to a simpler compatibility to Python 3. Problem are any ``u'...'`` texts inside error messages which now are simplified, some without and quotes. Changed are e.g. error messages by ``Property``.
- **IMPROVEMENT**: Python 3 support. At least the unittests run in Python 2.5, 2.6, 2.7, 3.2 and Jython 2.5.1 now. Both encutils (with support by Fredrik Hedman, thanks!) and cssutils (thanks to Jaraco) and the CSS codec (thanks to Walter Dörwald) seem to work with Python 3 (tested on Python 3.2.1 Win64). Tests use Mock instead of MiniMock now as former is available for Python 2.x and 3.x.
- **IMPROVEMENT**: Parsing of longer (and probably invalid) ``font`` or ``font-family`` values was *extremely* slow due to a very complex regex. This has been changed and parsing of specific stylesheets using these values should be much faster now. (``macros[Profiles.CSS_LEVEL_2]['font-family']`` is gone so if you used this in your own validation modules you need to check the source in `profiles.py`.)
- IMPROVEMENT: Fixed Issue #54 (thanks to Simon Sapin): Short hand like `#f80` color value object have correct red, green and blue property values now. Also ``hsl()`` and ``hsla()`` colors report (almost) correct values (due to rounding problems).
- **Source control has moved to bitbucket https://bitbucket.org/cthedot/cssutils**. Older Issues are currently still at Google Code, newer at Bitbucket. Please do not use Google Code for new issue reports anymore!
0.9.8a2 110611
- BUGFIX: Fixed Issue #59 which showed a rather strange problem with longer space separated lists of font-family values being so slow to actually stop parsing.
- BUGFIX/IMPROVEMENT: Fixed Issue #48. ``CSSParser.parseUrl()`` uses the defined fetcher of this parser *for the initial stylesheet* at url too and not just the imported sheets *from* this sheet.
- BUGFIX: Fixed Issue #50 which prevented cssutils parsing the acid2.css file correctly. Problem were selectors starting directly with ``[class]`` (an attribute selector).
+ **API CHANGE (major)**
(Known) named colors are parsed as ColorValue objects now. These are the 16 simple colors (black, white, etc) and `transparent` but not all Extended color keywords yet. Also changed ``ColorValue.type`` to ``Value.COLOR_VALUE``. ColorValue has additional properties ``red, green, blue, alpha`` and ``colorType`` which is one of IDENT, HASH or FUNCTION for now.
+ API CHANGE (minor)
Removed already DEPRECATED ``cssutils.parse`` and ``CSSParser.parse``. Use the more specific functions/methods ``parseFile parseString parseUrl`` instead.
Removed already DEPRECATED ``cssutils.log.setlog`` and ``.setloglevel``. Use ``.setLog`` and ``.setLevel`` instead.
Removed already DEPRECATED ``cssutils.ser.keepUnkownAtRules`` (note the typo). Use ``.keepUnknownAtRules`` instead.
- IMPROVEMENT: Added validation profiles for some properties from `CSS Backgrounds and Borders Module Level 3 <http://www.w3.org/TR/css3-background/>`__, `CSS3 Basic User Interface Module <http://www.w3.org/TR/css3-ui/#resize>`__, `CSS Text Level 3 <http://www.w3.org/TR/css3-text/>`__
mainly `cursor`, `outline`, `resize`, `box-shadow`, `text-shadow`
0.9.8a1 101212
+ **API CHANGE (major)**
replace CSSValue with PropertyValue, Value and other classes.
NEW CLASSES:
:class:`cssutils.css.PropertyValue`
replaces CSSValue and CSSValueList
- is iterable (iterates over all single Value objects which in soruce CSS might be separated by "," "/" or " "
- a comma separated list of IDENT values is no longer handled as a single String (e.g. ``Arial, sans-serif``)
:class:`cssutils.css.Value`
replaces CSSPrimitiveValue with separate ``value`` and ``type`` info (value is typed, so e.g. string for e.g. STRING, IDENT or URI values, int or float) and is base class for more specific values like:
:class:`cssutils.css.URIValue`
replaces CSSPrimitiveValue, additional attribute ``uri``
:class:`cssutils.css.DimensionValue`
replaces CSSPrimitiveValue, additional attribute ``dimension``
:class:`cssutils.css.ColorValue`
replaces CSSPrimitiveValue, additional attribute ``red``, ``green``, ``blue`` and ``alpha``
**TODO: Not yet complete, only rgb, rgba, hsl, hsla and has values use this object and color and alpha information no done yet!**
:class:`cssutils.css.CSSFunction`
replaces CSSPrimitiveValue function, not complete yet
also renamed ``ExpressionValue`` to :class:`cssutils.css.MSValue` with new API
- IMPROVEMENT/CHANGE: Validation of color values is tighter now. Values like ``hsl(1, 2, 3)`` do not validate as it must be ``hsl(1, 2%, 3%)``. This mostly effects HSL/A and RGB/A notation.
- **IMPROVEMENT**: New Value parsing and API accelerate parsing of style declarations which take about 20-30% less time now. Of course this depends on the complexity of your styles.
+ BUGFIX: fixes issue #41, #42, #45, #46
PropertyValue.value returns value without any comments now, else use PropertyValue.cssText
- FEATURE: ``cssutils.replaceUrls()`` accepts as first argument a `cssutils.css.CSSStyleSheet` but now also a
:class:`cssutils.css.CSSStyleDeclaration` object, so may be used like the following which is useful when you work with HTML style attributes::
>>> style = cssutils.parseStyle("background-image: url(1.png), url('2.png')")
>>> cssutils.replaceUrls(style, lambda url: 'prefix/'+url)
>>> print style.cssText
background-image: url(prefix/1.png), url(prefix/2.png)
(I omitted the validation error message as more than one background-image is not yet defined in the cssutils validator but does parse through without problems)
+ CHANGE: explicit `+` of any dimension, percentage of number value is kept now instead of being stripped as if put explicitly in the author SHOULD have meant something ;)