Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-rouge for openSUSE:Factory 
checked in at 2022-02-02 22:41:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rouge (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-rouge.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-rouge"

Wed Feb  2 22:41:35 2022 rev:16 rq:950649 version:3.27.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-rouge/rubygem-rouge.changes      
2021-01-21 21:56:29.389839104 +0100
+++ /work/SRC/openSUSE:Factory/.rubygem-rouge.new.1898/rubygem-rouge.changes    
2022-02-02 22:42:33.547066031 +0100
@@ -1,0 +2,6 @@
+Tue Jan 25 07:29:15 UTC 2022 - Stephan Kulow <co...@suse.com>
+
+updated to version 3.27.0
+  no changelog found
+
+-------------------------------------------------------------------

Old:
----
  rouge-3.26.0.gem

New:
----
  rouge-3.27.0.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-rouge.spec ++++++
--- /var/tmp/diff_new_pack.voBmL5/_old  2022-02-02 22:42:34.011062886 +0100
+++ /var/tmp/diff_new_pack.voBmL5/_new  2022-02-02 22:42:34.015062859 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-rouge
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,7 +24,7 @@
 #
 
 Name:           rubygem-rouge
-Version:        3.26.0
+Version:        3.27.0
 Release:        0
 %define mod_name rouge
 %define mod_full_name %{mod_name}-%{version}
@@ -37,7 +37,7 @@
 Source:         https://rubygems.org/gems/%{mod_full_name}.gem
 Source1:        gem2rpm.yml
 Summary:        A pure-ruby colorizer based on pygments
-License:        MIT OR BSD-2-Clause
+License:        BSD-2-Clause OR MIT
 Group:          Development/Languages/Ruby
 PreReq:         update-alternatives
 

++++++ rouge-3.26.0.gem -> rouge-3.27.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Gemfile new/Gemfile
--- old/Gemfile 2020-12-08 20:53:48.000000000 +0100
+++ new/Gemfile 2021-12-15 16:36:24.000000000 +0100
@@ -8,6 +8,7 @@
 
 gem 'minitest', '>= 5.0'
 gem 'minitest-power_assert'
+gem 'power_assert', '~> 1.2'
 
 gem 'parallel', '~> 1.13.0' if RUBY_VERSION < '2.2.0'
 gem 'rubocop', '~> 0.49.1'
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/demos/dafny new/lib/rouge/demos/dafny
--- old/lib/rouge/demos/dafny   1970-01-01 01:00:00.000000000 +0100
+++ new/lib/rouge/demos/dafny   2021-12-15 16:36:24.000000000 +0100
@@ -0,0 +1,16 @@
+module A {
+  const i: int := 56_78
+}
+
+method m(b: bool, s: string) {
+  var x: string;
+  var i: int;
+  if b then i := 1; else i := 2;
+  i := if b 1 else 2;
+  assert b;
+  assume b;
+  print s;
+  expect b;
+}
+
+function f(i: int): int { i + 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/formatter.rb new/lib/rouge/formatter.rb
--- old/lib/rouge/formatter.rb  2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/formatter.rb  2021-12-15 16:36:24.000000000 +0100
@@ -42,8 +42,8 @@
     end
 
     # Format a token stream.  Delegates to {#format}.
-    def self.format(tokens, *a, &b)
-      new(*a).format(tokens, &b)
+    def self.format(tokens, *args, **kwargs, &b)
+      new(*args, **kwargs).format(tokens, &b)
     end
 
     def initialize(opts={})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/ceylon.rb 
new/lib/rouge/lexers/ceylon.rb
--- old/lib/rouge/lexers/ceylon.rb      2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/ceylon.rb      2021-12-15 16:36:24.000000000 +0100
@@ -51,8 +51,8 @@
 
         rule %r("(\\\\|\\"|[^"])*"), Literal::String
         rule %r('\\.'|'[^\\]'|'\\\{#[0-9a-fA-F]{4}\}'), Literal::String::Char
-        rule %r(".*``.*``.*"', String::Interpol
-        rule %r(\.)([a-z_]\w*)) do
+        rule %r("[^`]*``[^`]*``[^`]*"), Literal::String::Interpol
+        rule %r((\.)([a-z_]\w*)) do
           groups Operator, Name::Attribute
         end
         rule %r([a-zA-Z_]\w*:), Name::Label
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/cpp.rb new/lib/rouge/lexers/cpp.rb
--- old/lib/rouge/lexers/cpp.rb 2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/cpp.rb 2021-12-15 16:36:24.000000000 +0100
@@ -59,7 +59,7 @@
       prepend :statements do
         rule %r/(class|struct)\b/, Keyword, :classname
         rule %r/template\b/, Keyword, :template
-        rule %r/\d+(\.\d+)?(?:h|(?:min)|s|(?:ms)|(?:us)|(?:ns))/, Num::Other
+        rule 
%r/#{dq}(\.#{dq})?(?:y|d|h|(?:min)|s|(?:ms)|(?:us)|(?:ns)|i|(?:if)|(?:il))\b/, 
Num::Other
         rule %r((#{dq}[.]#{dq}?|[.]#{dq})(e[+-]?#{dq}[lu]*)?)i, Num::Float
         rule %r(#{dq}e[+-]?#{dq}[lu]*)i, Num::Float
         rule %r/0x\h('?\h)*[lu]*/i, Num::Hex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/dafny.rb 
new/lib/rouge/lexers/dafny.rb
--- old/lib/rouge/lexers/dafny.rb       1970-01-01 01:00:00.000000000 +0100
+++ new/lib/rouge/lexers/dafny.rb       2021-12-15 16:36:24.000000000 +0100
@@ -0,0 +1,128 @@
+# -*- coding: utf-8 -*- #
+# frozen_string_literal: true
+
+module Rouge
+  module Lexers
+    class Dafny < RegexLexer
+      title "Dafny"
+      desc "The Dafny programming language (github.com/dafny-lang/dafny)"
+      tag "dafny"
+      filenames "*.dfy"
+      mimetypes "text/x-dafny"
+
+      keywords = %w(
+        abstract allocated assert assume
+        break by
+        calc case class codatatype const constructor
+        datatype decreases downto
+        else ensures exists expect export extends
+        false for forall fresh function
+        ghost greatest
+        if import include invariant iterator
+        label least lemma
+        match method modifies modify module
+        nameonly new newtype null
+        old opened
+        predicate print provides
+        reads refines requires return returns reveal reveals
+        static
+        then this to trait true twostate type
+        unchanged
+        var
+        while witness
+        yield yields
+      )
+
+      literals = %w{ true false null }
+
+      textOperators = %w{ as is in }
+
+      types = %w(bool char int real string nat
+                 array array? object object? ORDINAL
+                 seq set iset map imap multiset )
+
+      idstart = /[0-9a-zA-Z?]/
+      idchar = /[0-9a-zA-Z_'?]/
+      id = /#{idstart}#{idchar}*/
+
+      arrayType = /array(?:1[0-9]+|[2-9][0-9]*)\??(?!#{idchar})/
+      bvType = /bv(?:0|[1-9][0-9]*)(?!#{idchar})/
+
+      digit = /\d/
+      digits = /#{digit}+(?:_#{digit}+)*/
+      bin_digits = /[01]+(?:_[01]+)*/
+      hex_digit = /(?:[0-9a-fA-F])/
+      hex_digits = /#{hex_digit}+(?:_#{hex_digit}+)*/
+
+      cchar = /(?:[^\\'\n\r]|\\["'ntr\\0])/
+      schar = /(?:[^\\"\n\r]|\\["'ntr\\0])/
+      uchar = /(?:\\u#{hex_digit}{4})/
+
+      ## IMPORTANT: Rules are ordered, which allows later rules to be 
+      ## simpler than they would otherwise be
+      state :root do
+        rule %r(/\*), Comment::Multiline, :comment
+        rule %r(//.*?$), Comment::Single
+        rule %r(\*/), Error          # should not have closing comment in :root
+                                     # is an improperly nested comment
+
+        rule %r/'#{cchar}'/, Str::Char           # standard or escape char
+        rule %r/'#{uchar}'/, Str::Char           # unicode char
+        rule %r/'[^'\n\r]*'/, Error              # bad any other enclosed char
+        rule %r/'[^'\n\r]*$/, Error              # bad unclosed char
+
+        rule %r/"(?:#{schar}|#{uchar})*"/, Str::Double        # valid string
+        rule %r/".*"/, Error                     # anything else that is closed
+        rule %r/".*$/, Error                     # bad unclosed string
+
+        rule %r/@"([^"]|"")*"/, Str::Other     # valid verbatim string
+        rule %r/@".*/m, Error             # anything else , multiline unclosed
+
+
+        rule %r/#{digits}\.#{digits}(?!#{idchar})/, Num::Float
+        rule %r/0b#{bin_digits}(?!#{idchar})/, Num::Bin
+        rule %r/0b#{idchar}*/, Error
+        rule %r/0x#{hex_digits}(?!#{idchar})/, Num::Hex
+        rule %r/0x#{idchar}*/, Error
+        rule %r/#{digits}(?!#{idchar})/, Num::Integer
+        rule %r/_(?!#{idchar})/, Name
+        rule %r/_[0-9_]+[_]?(?!#{idchar})/, Error
+        rule %r/[0-9_]+_(?!#{idchar})/, Error
+        rule %r/[0-9]#{idchar}+/, Error
+
+        rule %r/#{arrayType}/, Keyword::Type
+        rule %r/#{bvType}/, Keyword::Type
+
+        rule id do |m|
+          if types.include?(m[0])
+            token Keyword::Type
+          elsif literals.include?(m[0])
+            token Keyword::Constant
+          elsif textOperators.include?(m[0])
+            token Operator::Word
+          elsif keywords.include?(m[0])
+            token Keyword::Reserved
+          else
+            token Name
+          end
+        end
+
+        rule %r/\.\./, Operator
+        rule %r/[*!%&<>\|^+=:.\/-]/, Operator
+        rule %r/[\[\](){},;`]/, Punctuation
+
+        rule %r/[^\S\n]+/, Text
+        rule %r/\n/, Text
+        rule %r/./, Error # Catchall
+      end
+
+      state :comment do
+        rule %r(\*/), Comment::Multiline, :pop!
+        rule %r(/\*), Comment::Multiline, :comment
+        rule %r([^*/]+), Comment::Multiline
+        rule %r(.), Comment::Multiline
+      end
+
+    end
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/eex.rb new/lib/rouge/lexers/eex.rb
--- old/lib/rouge/lexers/eex.rb 2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/eex.rb 2021-12-15 16:36:24.000000000 +0100
@@ -7,9 +7,9 @@
       desc "Embedded Elixir"
 
       tag 'eex'
-      aliases 'leex'
+      aliases 'leex', 'heex'
 
-      filenames '*.eex', '*.leex'
+      filenames '*.eex', '*.leex', '*.heex'
 
       def initialize(opts={})
         @elixir_lexer = Elixir.new(opts)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/factor.rb 
new/lib/rouge/lexers/factor.rb
--- old/lib/rouge/lexers/factor.rb      2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/factor.rb      2021-12-15 16:36:24.000000000 +0100
@@ -243,8 +243,8 @@
         end
 
         # strings
-        rule %r/"""\s+.*?\s+"""/, Str
-        rule %r/"(\\.|[^\\])*?"/, Str
+        rule %r/"(?:\\\\|\\"|[^"])*"/, Str
+        rule %r/\S+"\s+(?:\\\\|\\"|[^"])*"/, Str
         rule %r/(CHAR:)(\s+)(\\[\\abfnrstv]*|\S)(?=\s)/, Str::Char
 
         # comments
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/ghc_core.rb 
new/lib/rouge/lexers/ghc_core.rb
--- old/lib/rouge/lexers/ghc_core.rb    2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/ghc_core.rb    2021-12-15 16:36:24.000000000 +0100
@@ -17,7 +17,7 @@
         rule %r/^=====.*=====$/, Generic::Heading
         # timestamps
         rule %r/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}\.\d+ UTC$/, 
Comment::Single
-        rule %r/^Result size of .+\s*.*}/, Comment::Multiline
+        rule %r/^Result size of .+\n.+{[^}]*}/, Comment::Multiline
         rule %r/--.*$/, Comment::Single
 
         rule %r/\[/, Comment::Special, :annotation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/jsl.rb new/lib/rouge/lexers/jsl.rb
--- old/lib/rouge/lexers/jsl.rb 2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/jsl.rb 2021-12-15 16:36:24.000000000 +0100
@@ -14,24 +14,23 @@
         rule %r/\s+/m, Text::Whitespace
 
         rule %r(//.*?$), Comment::Single
-        rule %r'/[*].*', Comment::Multiline, :comment
+        rule %r'/[*].*?', Comment::Multiline, :comment # multiline block 
comment
 
         # messages
         rule %r/<</, Operator, :message
 
         # covers built-in and custom functions
-        rule %r/([a-z_][\w\s'%.\\]*)(\()/i do |m|
-          groups Keyword, Punctuation
+        rule %r/(::|:)?([a-z_][\w\s'%.\\]*)(\()/i do |m|
+          groups Punctuation, Keyword, Punctuation
         end
 
         rule 
%r/\d{2}(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\d{2}(\d{2})?(:\d{2}:\d{2}(:\d{2}(\.\d*)?)?)?/i,
 Literal::Date
 
         rule %r/-?(?:[0-9]+(?:[.][0-9]+)?|[.][0-9]*)(?:e[+-]?[0-9]+)?i?/i, Num
 
-        rule %r/::[a-z_][\w\s'%.\\]*/i, Name::Variable
-        rule %r/:\w+/, Name
-        rule %r/[a-z_][\w\s'%.\\]*/i, Name::Variable
-        rule %r/"(?:\\!"|[^"])*?"n/m, Name::Variable
+        rule %r/(::|:)?([a-z_][\w\s'%.\\]*|"(?:\\!"|[^"])*?"n)/i do |m|
+          groups Punctuation, Name::Variable
+        end
 
         rule %r/(")(\\\[)(.*?)(\]\\)(")/m do
           groups Str::Double, Str::Escape, Str::Double, Str::Escape, 
Str::Double  # escaped string
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/rust.rb new/lib/rouge/lexers/rust.rb
--- old/lib/rouge/lexers/rust.rb        2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/rust.rb        2021-12-15 16:36:24.000000000 +0100
@@ -22,10 +22,10 @@
 
       def self.keywords
         @keywords ||= %w(
-          as assert async await break const continue copy do drop else enum 
extern
-          fail false fn for if impl let log loop match mod move mut priv pub 
pure
-          ref return self static struct true trait type unsafe use where
-          while box
+          as assert async await break crate const continue copy do drop dyn 
else enum extern
+          fail false fn for if impl let log loop macro match mod move mut priv 
pub pure
+          ref return self Self static struct super true try trait type union 
unsafe use
+          where while yield box
         )
       end
 
@@ -40,6 +40,9 @@
           Right Send Shl Shr size_t Some ssize_t str Sub Success time_t
           u16 u32 u64 u8 usize uint uintptr_t
           Box Vec String Gc Rc Arc
+          u128 i128 Result Sync Pin Unpin Sized Drop drop Fn FnMut FnOnce
+          Clone PartialEq PartialOrd AsMut AsRef From Into Default
+          DoubleEndedIterator ExactSizeIterator Extend IntoIterator Iterator
         )
       end
 
@@ -54,12 +57,12 @@
 
       delim_map = { '[' => ']', '(' => ')', '{' => '}' }
 
-      id = /[a-z_]\w*/i
+      id = /[\p{XID_Start}_]\p{XID_Continue}*/
       hex = /[0-9a-f]/i
       escapes = %r(
-        \\ ([nrt'"\\0] | x#{hex}{2} | u#{hex}{4} | U#{hex}{8})
+        \\ ([nrt'"\\0] | x#{hex}{2} | u\{(#{hex}_*){1,6}\})
       )x
-      size = /8|16|32|64/
+      size = /8|16|32|64|128|size/
 
       # Although not officially part of Rust, the rustdoc tool allows code in
       # comments to begin with `#`. Code like this will be evaluated but not
@@ -82,8 +85,62 @@
 
       state :whitespace do
         rule %r/\s+/, Text
-        rule %r(//[^\n]*), Comment
-        rule %r(/[*].*?[*]/)m, Comment::Multiline
+        mixin :comments
+      end
+
+      state :comments do
+        # Only 3 slashes are doc comments, `////` and beyond become normal
+        # comments again (for some reason), so match this before the
+        # doc line comments rather than figure out a
+        rule %r(////+[^\n]*), Comment::Single
+        # doc line comments ??? either inner (`//!`), or outer (`///`).
+        rule %r(//[/!][^\n]*), Comment::Doc
+        # otherwise, `//` is just a plain line comme
+        rule %r(//[^\n]*), Comment::Single
+        # /**/ and /***/ are self-closing block comments, not doc. Because this
+        # is self-closing, it doesn't enter the states for nested comments
+        rule %r(/\*\*\*?/), Comment::Multiline
+        # 3+ stars and it's a normal non-doc block comment.
+        rule %r(/\*\*\*+), Comment::Multiline, :nested_plain_block
+        # `/*!` and `/**` begin doc comments. These nest and can have internal
+        # block/doc comments, but they're still part of the documentation
+        # inside.
+        rule %r(/[*][*!]), Comment::Doc, :nested_doc_block
+        # any other /* is a plain multiline comment
+        rule %r(/[*]), Comment::Multiline, :nested_plain_block
+      end
+
+      # Multiline/block comments fully nest. This is true for ones that are
+      # marked as documentation too. The behavior here is:
+      #
+      # - Anything inside a block doc comment is still included in the
+      #   documentation, even if it's a nested non-doc block comment. For
+      #   example: `/** /* still docs */ */`
+      # - Anything inside of a block non-doc comment is still just a normal
+      #   comment, even if it's a nested block documentation comment. For
+      #   example: `/* /** not docs */ */`
+      #
+      # This basically means: if (on the outermost level) the comment starts as
+      # one kind of block comment (either doc/non-doc), then everything inside
+      # of it, including nested block comments??of the opposite type, needs to
+      # stay that type.
+      #
+      # Also note that single line comments do nothing anywhere inside of block
+      # comments, thankfully.
+      #
+      # We just define this as two states, because this seems easier than
+      # tracking it with instance vars.
+      [
+        [:nested_plain_block, Comment::Multiline],
+        [:nested_doc_block, Comment::Doc]
+      ].each do |state_name, comment_token|
+        state state_name do
+          rule %r(\*/), comment_token, :pop!
+          rule %r(/\*), comment_token, state_name
+          # We only want to eat at most one `[*/]` at a time,
+          # but we can skip past non-`[*/]` in bulk.
+          rule %r([^*/]+|[*/]), comment_token
+        end
       end
 
       state :root do
@@ -110,6 +167,7 @@
         rule %r/\bmacro_rules!/, Name::Decorator, :macro_rules
         rule %r/#{id}!/, Name::Decorator, :macro
 
+        rule %r/'static\b/, Keyword
         rule %r/'#{id}/, Name::Variable
         rule %r/#{id}/ do |m|
           name = m[0]
@@ -155,32 +213,33 @@
       state :has_literals do
         # constants
         rule %r/\b(?:true|false|nil)\b/, Keyword::Constant
-        # characters
+        # characters/bytes
         rule %r(
-          ' (?: #{escapes} | [^\\] ) '
+          b?' (?: #{escapes} | [^\\] ) '
         )x, Str::Char
 
-        rule %r/"/, Str, :string
-        rule %r/r(#*)".*?"\1/m, Str
+        rule %r/b?"/, Str, :string
+        rule %r/b?r(#*)".*?"\1/m, Str
 
         # numbers
-        dot = /[.][0-9_]+/
-        exp = /e[-+]?[0-9_]+/
+        dot = /[.][0-9][0-9_]*/
+        exp = /[eE][-+]?[0-9_]+/
         flt = /f32|f64/
 
         rule %r(
-          [0-9_]+
+          [0-9][0-9_]*
           (#{dot}  #{exp}? #{flt}?
           |#{dot}? #{exp}  #{flt}?
           |#{dot}? #{exp}? #{flt}
+          |[.](?![._\p{XID_Start}])
           )
         )x, Num::Float
 
         rule %r(
           ( 0b[10_]+
           | 0x[0-9a-fA-F_]+
-          | 0o[0-7]+
-          | [0-9_]+
+          | 0o[0-7_]+
+          | [0-9][0-9_]*
           ) (u#{size}?|i#{size})?
         )x, Num::Integer
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/sql.rb new/lib/rouge/lexers/sql.rb
--- old/lib/rouge/lexers/sql.rb 2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/sql.rb 2021-12-15 16:36:24.000000000 +0100
@@ -38,8 +38,8 @@
           DYNAMIC DYNAMIC_FUNCTION DYNAMIC_FUNCTION_CODE EACH ELSE
           ENCODING ENCRYPTED END END-EXEC EQUALS ESCAPE EVERY EXCEPT
           ESCEPTION EXCLUDING EXCLUSIVE EXEC EXECUTE EXISTING EXISTS
-          EXPLAIN EXTERNAL EXTRACT FALSE FETCH FINAL FIRST FOR FORCE
-          FOREIGN FORTRAN FORWARD FOUND FREE FREEZE FROM FULL FUNCTION
+          EXPLAIN EXTERNAL EXTRACT FALSE FETCH FINAL FIRST FOLLOWING FOR
+          FORCE FOREIGN FORTRAN FORWARD FOUND FREE FREEZE FROM FULL FUNCTION
           G GENERAL GENERATED GET GLOBAL GO GOTO GRANT GRANTED GROUP
           GROUPING HANDLER HAVING HIERARCHY HOLD HOST IDENTITY IGNORE
           ILIKE IMMEDIATE IMMUTABLE IMPLEMENTATION IMPLICIT IN INCLUDING
@@ -58,10 +58,10 @@
           ORDINALITY OUT OUTER OUTPUT OVERLAPS OVERLAY OVERRIDING
           OWNER PAD PARAMETER PARAMETERS PARAMETER_MODE PARAMATER_NAME
           PARAMATER_ORDINAL_POSITION PARAMETER_SPECIFIC_CATALOG
-          PARAMETER_SPECIFIC_NAME PARAMATER_SPECIFIC_SCHEMA PARTIAL PASCAL
-          PENDANT PLACING PLI POSITION POSTFIX PREFIX PREORDER
+          PARAMETER_SPECIFIC_NAME PARAMATER_SPECIFIC_SCHEMA PARTIAL PARTITION
+          PASCAL PENDANT PLACING PLI POSITION POSTFIX PREFIX PRECEDING PREORDER
           PREPARE PRESERVE PRIMARY PRIOR PRIVILEGES PROCEDURAL PROCEDURE
-          PUBLIC READ READS RECHECK RECURSIVE REF REFERENCES REFERENCING
+          PUBLIC RANGE READ READS RECHECK RECURSIVE REF REFERENCES REFERENCING
           REINDEX RELATIVE RENAME REPEATABLE REPLACE RESET RESTART
           RESTRICT RESULT RETURN RETURNED_LENGTH RETURNED_OCTET_LENGTH
           RETURNED_SQLSTATE RETURNS REVOKE RIGHT ROLE ROLLBACK ROLLUP
@@ -84,7 +84,7 @@
           USAGE USER USER_DEFINED_TYPE_CATALOG USER_DEFINED_TYPE_NAME
           USER_DEFINED_TYPE_SCHEMA USING VACUUM VALID VALIDATOR VALUES
           VARIABLE VERBOSE VERSION VIEW VOLATILE WHEN WHENEVER WHERE
-          WITH WITHOUT WORK WRITE ZONE
+          WINDOW WITH WITHOUT WORK WRITE ZONE
         )
       end
 
@@ -126,7 +126,7 @@
         end
 
         rule %r([+*/<>=~!@#%&|?^-]), Operator
-        rule %r/[;:()\[\],.]/, Punctuation
+        rule %r/[;:()\[\]\{\},.]/, Punctuation
       end
 
       state :multiline_comments do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/swift.rb 
new/lib/rouge/lexers/swift.rb
--- old/lib/rouge/lexers/swift.rb       2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/swift.rb       2021-12-15 16:36:24.000000000 +0100
@@ -15,17 +15,17 @@
       id = /#{id_head}#{id_rest}*/
 
       keywords = Set.new %w(
-        break case continue default do else fallthrough if in for return 
switch where while try catch throw guard defer repeat
+        await break case continue default do else fallthrough if in for return 
switch where while try catch throw guard defer repeat
 
         as dynamicType is new super self Self Type __COLUMN__ __FILE__ 
__FUNCTION__ __LINE__
 
-        associativity didSet get infix inout mutating none nonmutating 
operator override postfix precedence prefix set unowned weak willSet throws 
rethrows precedencegroup
+        associativity async didSet get infix inout isolated mutating none 
nonmutating operator override postfix precedence prefix set unowned weak 
willSet throws rethrows precedencegroup
 
         #available #colorLiteral #column #else #elseif #endif #error #file 
#fileLiteral #function #if #imageLiteral #line #selector #sourceLocation 
#warning
       )
 
       declarations = Set.new %w(
-        class deinit enum convenience extension final func import init 
internal lazy let optional private protocol public required static struct 
subscript typealias var dynamic indirect associatedtype open fileprivate some
+        actor class deinit enum convenience extension final func import init 
internal lazy let nonisolated optional private protocol public required static 
struct subscript typealias var dynamic indirect associatedtype open fileprivate 
some
       )
 
       constants = Set.new %w(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/lexers/yaml.rb new/lib/rouge/lexers/yaml.rb
--- old/lib/rouge/lexers/yaml.rb        2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/lexers/yaml.rb        2021-12-15 16:36:24.000000000 +0100
@@ -175,7 +175,7 @@
 
       state :block_nodes do
         # implicit key
-        rule 
%r/((?:[\p{L}\p{Nl}\p{Nd}_][\p{L}\p{Nl}\p{Nd}\p{Blank}_-]*)?)(:)(?=\s|$)/ do |m|
+        rule %r/([^#,:?\[\]{}"'\n]+)(:)(?=\s|$)/ do |m|
           groups Name::Attribute, Punctuation::Indicator
           set_indent m[0], :implicit => true
         end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rouge/version.rb new/lib/rouge/version.rb
--- old/lib/rouge/version.rb    2020-12-08 20:53:48.000000000 +0100
+++ new/lib/rouge/version.rb    2021-12-15 16:36:24.000000000 +0100
@@ -3,6 +3,6 @@
 
 module Rouge
   def self.version
-    "3.26.0"
+    "3.27.0"
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2020-12-08 20:53:48.000000000 +0100
+++ new/metadata        2021-12-15 16:36:24.000000000 +0100
@@ -1,14 +1,14 @@
 --- !ruby/object:Gem::Specification
 name: rouge
 version: !ruby/object:Gem::Version
-  version: 3.26.0
+  version: 3.27.0
 platform: ruby
 authors:
 - Jeanine Adkisson
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2020-12-08 00:00:00.000000000 Z
+date: 2021-12-15 00:00:00.000000000 Z
 dependencies: []
 description: Rouge aims to a be a simple, easy-to-extend drop-in replacement 
for pygments.
 email:
@@ -62,6 +62,7 @@
 - lib/rouge/demos/cypher
 - lib/rouge/demos/cython
 - lib/rouge/demos/d
+- lib/rouge/demos/dafny
 - lib/rouge/demos/dart
 - lib/rouge/demos/datastudio
 - lib/rouge/demos/diff
@@ -290,6 +291,7 @@
 - lib/rouge/lexers/cypher.rb
 - lib/rouge/lexers/cython.rb
 - lib/rouge/lexers/d.rb
+- lib/rouge/lexers/dafny.rb
 - lib/rouge/lexers/dart.rb
 - lib/rouge/lexers/datastudio.rb
 - lib/rouge/lexers/diff.rb
@@ -517,7 +519,7 @@
     - !ruby/object:Gem::Version
       version: '0'
 requirements: []
-rubygems_version: 3.1.2
+rubygems_version: 3.0.3
 signing_key: 
 specification_version: 4
 summary: A pure-ruby colorizer based on pygments

Reply via email to