./devel/ruby-sexp-processor, Generic sexp processing tools

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 4.15.1, Package name: ruby26-sexp-processor-4.15.1, Maintainer: pkgsrc-users

sexp_processor branches from ParseTree bringing all the generic sexp
processing tools with it. Sexp, SexpProcessor, Environment, etc... all
for your language processing pleasure.


Required to run:
[lang/ruby26-base]

Required to build:
[pkgtools/cwrappers]

Master sites:

SHA1: c7f35f363a621130ac7b978393827c7cf40d751a
RMD160: a9ae75dc6017963de10cab93d630a88c988e2ef6
Filesize: 55 KB

Version history: (Expand)


CVS history: (Expand)


   2020-09-14 15:03:08 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-sexp-processor: update to 4.15.1

Update ruby-sexp-processor to 4.15.1.

=== 4.15.1 / 2020-08-31

* 1 bug fix:

  * Bumped ruby version to include 3.0 (trunk).
   2020-06-10 16:24:58 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-sexp-processor: update to 4.15.0

Update ruby-sexp-processorto 4.15.0.

=== 4.15.0 / 2020-06-09

* 1 minor enhancement:

  * Added `child` and `include` to Sexp::Matcher.parse language.
   2020-03-08 16:18:45 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-sexp-processor: update to 4.14.1

Update ruby-sexp-processor to 4.14.1.

=== 4.14.1 / 2020-02-09

* 2 bug fixes:

  * Declared support for ruby 2.2+ to gemspec.
  * Fixed alias for `not?` to `-` for ruby <= 2.4. (nard-tech).

=== 4.14.0 / 2020-02-06

* 4 minor enhancements:

  * Added '-' as an alias for the 'not?' pattern matching command.
  * Added Klass matcher to match on types.
  * Added `k` shortcut for Klass & hooked into Sexp::Matcher.parse.
  * Added any matcher to pattern parser.
   2019-11-02 15:49:12 by Takahiro Kambe | Files touched by this commit (3) | Package updated
Log message:
devel/ruby-sexp-processor: update to 4.13.0

Update ruby-sexp-processor to 4.13.0.

=== 4.13.0 / 2019-09-24

* 4 minor enhancements:

  * Added Sexp.q (query) and deprecated Sexp.s to distinguish better and match \ 
inspect output.
  * Extended Sexp::Matcher::Parser to allow `not?` patterns.
  * Extended Sexp::Matcher::Parser to cover more method names.
  * Split out all pattern-oriented code to sexp_matcher.rb.

* 1 bug fix:

  * Fixed bug w/ ruby's Array#eql? and #hash not looking at ivars.

=== 4.12.1 / 2019-06-03

* 1 minor enhancement:

  * Sexp#line now raises if setting w/ non-integer (eg nil).

* 3 bug fixes:

  * Fixed pt_testcase.rb for block args w/ trailing commas.
  * Fixed pt_testcase.rb for stabby proc sexps.
  * Simple fixes for STRICT_SEXP=1.
   2019-05-06 07:35:25 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-sexp-processor: update to 4.12.0

=== 4.12.0 / 2019-03-12

* 3 bug fixes:

  * Fixed sexp_body to return empty sexp instead of nil when using STRICT_SEXP.
  * STRICT_SEXP=4+ fails w/ current use of concat. Removed concat from \ 
strictness for now.
  * Use concat internally instead of splat. Some people have 20000 node sexps! \ 
(presidentbeef)
   2018-05-06 04:06:16 by Takahiro Kambe | Files touched by this commit (2) | Package updated
Log message:
devel/ruby-sexp-processor: update to 4.11.0

=== 4.11.0 / 2018-04-05

* 1 minor enhancement:

  * Extended deep_each to skip subtrees if block returns :skip.
   2018-02-28 16:19:16 by Takahiro Kambe | Files touched by this commit (3)
Log message:
devel/ruby-sexp-processor: updaet to 4.10.1

=== 4.10.1 / 2018-02-15

* 1 minor enhancement:

  * Tweaked pt_testcase for ruby 2.5 and better ruby2ruby test data.
   2017-07-31 16:16:47 by Takahiro Kambe | Files touched by this commit (3) | Package updated
Log message:
Update ruby-sexp-processor to 4.10.0.

=== 4.10.0 / 2017-07-17

* 2 major enhancements:

  * Added experimental pattern matcher to Sexp. Forked from sexp_path.
  * Extended s to take a block and return a matcher: eg s{ s(:defn, atom, _, ___) }

* 23 minor enhancements:

  * Added $STRICT_SEXP to crank down Sexp.[] and friends.
  * Added Matcher#/ w/ real functionality.
  * Added Sexp#/ to search with new patterns.
  * Added Sexp#map to ensure you get a Sexp back.
  * Added Sexp#new to create a new sexp with the same file/line/comment info.
  * Added Sexp#search_each to recursively search w/ new patterns. Returns enum \ 
if no block.
  * Added Sexp#sexp_body=
  * Added Sexp::Matcher.match_subs? and .match_subs= to extend =~ so you can \ 
match strictly.
  * Added Sexp::Matcher.parse to convert lispy string to safe matcher: \ 
"(defn atom _ ___)"
  * Added all mutation methods to STRICT_SEXP >= 4
  * Added deprecation message to Sexp#structure for [s(...)] forms.
  * Added strict_sexp.rb to help you clamp down for future changes. STRICT_SEXP=1+
  * Auto-require strict_sexp if $STRICT_SEXP is > 0.
  * Converted a lot of indexed access to sexp_type/sexp_body, etc.
  * Finally enforced SexpProcessor#process to only process sexps, not bare arrays.
  * Made Sexp#/ double-dispatch to Matcher#/.
  * Made Sexp#gsub work with new patterns.
  * Made Sexp#sub work with new patterns.
  * Made SexpProcessor STRICT_SEXP=4 compliant.
  * Retired SexpMatchSpecial & SexpAny. Never used by anything AFAICT.
  * Sexp#=== goes back to default.
  * Sexp#=~(pat) calls pat =~ self.
  * Sexp#sexp_body now takes optional offset. Use instead of sexp[n..-1].

* 9 bug fixes:

  * Extended Sexp::Matcher::Parser.parse to lex more forms of regexp.
  * Finished off all missing doco.
  * Fixed == methods on all Matcher classes to include ivars.
  * Fixed Child#satisfy? to properly return false if failed.
  * Fixed Sexp#sexp_body to return a sexp using Sexp#new.
  * Fixed map to use Sexp#new.
  * Only try to set c_type if it responds to it. Make STRICT_SEXP safe.
  * R2C has a hack in SexpProcessor to call sexp_type=. Renamed to c_type= in R2C.
  * Removed very obsolete attrset test from pt_testcase.rb

=== 4.10.0b1 / 2017-06-13

Beta of the above.