Revision history for Org-Parser

0.45    2015-08-18 (PERLANCAR)

	- No functional changes.

	- Switch from Log::Any to Log::Any::IfLOG.

0.44    2015-03-14 (PERLANCAR)

	- Add cmp_priorities() method to Org::Document.

	- Add headlines() method to Org::Element.

0.43    2014-12-01 (PERLANCAR)

	- No functional changes.

	- [Bugfix] Fix logic in headline's get_property(), the previous fix
          didn't really fix the problem [RT#100553].

0.42    2014-11-26 (PERLANCAR)

	- Fix get_property()'s search_parent argument (was not properly
	  implemented) [RT#100553].

0.41    2014-11-18 (PERLANCAR)

        - Add role: Org::Element::InlineRole, which adds the 'as_text' method to
          get "rendered plaintext" representation of element. This is mostly
          identical to what 'as_string' returns, except for links in which case
          'as_text' will return the description or the link instead of the raw
          representation [RT#100396].

        - Fix documentation [RT#100395].

        - Add some known settings [RT#100394].

0.40    2014-07-17 (PERLANCAR)

        - [Bugfix] miscached todo keywords and priorities from previous parse
          due to the use of /o regex modifier [RT#98375].

0.39    2014-07-17 (SHARYANTO)


        - Support parsing progress cookie in headline (e.g. '* TODO title [5/10]').

        - Accept ( and { to start markup, like Emacs (but { hasn't worked yet)

        [BUG FIXES]

        - Non-TODO headlines can have priority too, so the 'todo_priority'
          attribute is renamed to 'priority' [RT#95947](2014-07-16). The old
          name is deprecated and will be supported for a while before it is


        - Reduce confusion about array/list/arrayref [RT#97244].

0.38    2014-05-17 (SHARYANTO)

        - Update timestamp parsing to follow newer org-mode ([2014-01-06] is
          allowed as well as [2014-01-06 ]).

        - Replace File::Slurp with File::Slurp::Tiny.

0.37    2013-10-27 (SHARYANTO)

        - Support parsing habit-style repeater (thanks Alex White).

0.36    2013-09-23 (SHARYANTO)

        - No functional changes. Update test due to updated timezone database
          (WIT -> WIB) [CT].

0.35    2013-09-05 (SHARYANTO)

        - Text below a list item, indented at the same level as or less than the
          list item, can now break the list. This is the behavior of newer
          Org-mode (7.x?) and the one that makes more sense. Thanks to Trent
          Fisher for finding out about the issue and providing a test case.

        - List: add items().

0.34    2013-06-28 (SHARYANTO)

        - Add some more known settings from the Orgmode manual's index.

0.33    2013-06-26 (SHARYANTO)

        - No functional changes. Second attempt: add 'use experimental
          "smartmatch"' must be given after 'use Moo'.

0.32    2013-06-25 (SHARYANTO)

        - No functional changes. Add 'use experimental "smartmatch"' for 5.18+.

0.31    2013-05-15 (SHARYANTO)

        [BUG FIXES]

        - ListItem: dumping description list item didn't dump the description
          term and the " ::" string.

0.30    2013-02-06 (SHARYANTO)


        - Headline: Add get_drawer() (implemented by Meng Weng Wong).

0.29    2013-01-15 (SHARYANTO)


        - Move get_property() from Org::Element to Org::Element::Headline and
          change it so it searches children instead of siblings. This is the
          correct behavior, as properties are associated with entries/headlines
          and not any element. Ref:
          Thanks Meng Weng Wong.

0.28    2013-01-07 (SHARYANTO) - Happy new year! (my first release in 2013)

        - No functional changes.

        [BUG FIXES]

        - Correct as_string() for link [RT#82334]

0.27    2012-08-07 (SHARYANTO)

        - No functional changes. Increase Perl minimum version requirement from
          5.10.0 to 5.10.1 due to failing reports in 5.10.0 [RT#78795]. Thanks,

0.26    2012-07-23 (SHARYANTO)


        - Org::Parser: Add 'cache_file' option to parse_file(). Caching is done
          by storing the parsed Org::Document object using Storable. The
          storable file will be used as long as the original Org file is not
          modified. It is useful if you often parse a less-often-modified,
          largish Org file.

        - Org::Element: Make walk() able to walk headline's title.

        - Org::Element::Timestamp: Add clear_parse_result() to make timestamp
          object serializable.

0.25    2012-07-21 (SHARYANTO)

        - No functional changes. Add Unicode test files.

0.24    2012-07-17 (SHARYANTO)

        - Add binmode => ':utf8' flag to read_file() [RT#78423].

0.23    2012-04-14 (SHARYANTO)

        - No functional changes. Another increase in parsing speed by avoiding
          doing unnecessary stuffs in first pass and adding m//o flag. A speedup
          of about 1.25x is expected.

0.22    2012-04-13 (SHARYANTO)

        - No functional changes. Faster parsing (reduce overheads from logging
          statements and %+ access). A speedup of about 2x is expected.

0.21    2011-09-23 (SHARYANTO)

        - No functional changes. Remove debug message.

0.20    2011-09-23 (SHARYANTO)


        - Allow setting time zone (for timestamps).

0.19    2011-09-22 (SHARYANTO)


        - Table: Add as_aoa().

        - Table row: Add as_array().

0.18    2011-08-11 (SHARYANTO)


        - Rename Org::Element::ShortExample to Org::Element::FixedWidthSection.

        - Allow /^\s*:$/ line as a special case in fixed width section (ref:
          [org-mode feb52f9028e73f0f49390780bb2e61cc9da04303])

0.17    2011-07-27 (SHARYANTO)


        - Rename Org::Element::Base to Org::Element.


        - Allow decimal fraction on timestamp repeater & warning period.

        - Base: add method remove().

        - Headline: add methods {promote,demote}_{node,branch}().

0.16    2011-06-16 (SHARYANTO)

        - Relax timestamp parsing for Chinese/French timestamps.

0.15    2011-06-09 (SHARYANTO)


        - dump-org-structure script moved to App::OrgUtils.


        - Base: Add field_name().

        - Headline: Add is_leaf().

0.14    2011-06-06 (SHARYANTO)


        - Headline: Add get_active_timestamp().

0.13    2011-06-06 (SHARYANTO)

        - No functional changes for the parser.


        - Spin off 'remind-due-todos' script into App::ListOrgHeadlines.

0.12    2011-05-25 (SHARYANTO)


        - Compliance: Parse .+/++ repeater forms and warning period in timestamp
          [thanks Louis B. Moore]

        [BUG FIXES]

        - Fix regex for parsing table [RT#68442, thanks Slaven Rezic]


        - Use utf8 in dump-org-structure script.

0.11    2011-05-23 (SHARYANTO)


        - Compliance: blocks can be indented.

        - Compliance: some settings can be indented.

        - Parse short example (one-line literal example with colon+space prefix
          syntax). See Org::Element::ShortExample.

0.10    2011-04-21 (SHARYANTO)


        - Fixes to POD documentation.

        - More specific regex for tag.


        - Update (some questions cleared up by Carsten Dominik)

0.09    2011-03-31 (SHARYANTO)


        - Fix SYNOPSIS, use a slightly more complex Org document example.

0.08    2011-03-23 (SHARYANTO)


        - Update bin/remind-due-todos.

0.07    2011-03-23 (SHARYANTO)


        - Org::Element::Base: add find(), walk_parents(), headline()

        - Org::Element::Headline: add get_tags()


        - Link description can contain markups.

0.06    2011-03-23 (SHARYANTO)


        - Some regex fixes.

0.05    2011-03-23 (SHARYANTO)


        - Org::Element::TimeRange: datetime1 & datetime2 attributes removed,
          replaced with ts1 & ts2 (timestamp elements).


        - Parses event duration and repeater interval in timestamps.

0.04    2011-03-22 (SHARYANTO)

        - This release is a major refactoring from the previous one.


        - Org::Parser: handler() removed, use Org::Document's walk() instead.

        - Refactoring: some classes removed/merged, some added.


        - Dual-pass parsing for more correct behaviour.

        - Parse link, plain list (including ordered/unordered/description list),
          target, radio target, comment, footnote.

        - Add a couple of utility methods in Element::Base: seniority(),
          prev_sibling(), next_sibling(), walk(), get_property().


        - Project todo list now in distribution's

0.03    2011-03-18 (SHARYANTO)


        - Parse text markups (bold, italic, etc).

        - bin/dump-org-structure outputs nicer format.


        - Todo keyword can also be separated from title with \W (not just \s),
          e.g. '* TODO/quit smoking'.

0.02    2011-03-17 (SHARYANTO)


        - Refactoring: parser now returns Org::Document instance, which contains
          Org::Element instances. handler sub parameter changed.


        - Parse tables.

        - Headline titles can now contain inline elements (normal text as well
          as other elements, such as timestamps, etc).

        - Add another example script: dump-org-structure.

        - Recognize blocks: HTML, LATEX, ASCII.


        - Setting/block/drawer/property names are case-insensitive.

0.01    2011-03-16 (SHARYANTO)

        - First release.