<commit_before>==README

* (https://github.com/stompgem/stomp/)

===Overview

An implementation of the Stomp protocol for Ruby. See:

* [STOMP 1.0 and 1.1] (http://stomp.github.com/index.html)

===New

* Gem version 1.2.5. Restructure. Forks with modifcations will be affected. See _CHANGELOG.rdoc_ for details.
* Gem version 1.2.4. Stomp 1.1 heartbeat fix, autoflush capability, miscellaneous fixes.
* Gem version 1.2.3. Miscellaneous fixes, see changelog for details.
* Gem version 1.2.2. Performance and more SSL enhancements.
* Full support of SSL certificates is announced as of gem version 1.2.1.
* Support of Stomp protocol level 1.1 is announced as of gem version 1.2.0.

See _CHANGELOG.rdoc_ for details.

===Hash Login Example Usage (this is the recommended login technique)

  hash = {
      :hosts => [
        {:login => "login1", :passcode => "<PASSWORD>", :host => "remotehost1", :port => 61612, :ssl => true},
        {:login => "login2", :passcode => "<PASSWORD>", :host => "remotehost2", :port => 61613, :ssl => false},
        
      ],
      # These are the default parameters, don't need to be set
      :reliable => true, # true for hash login
      :initial_reconnect_delay => 0.01,
      :max_reconnect_delay => 30.0,
      :use_exponential_back_off => true,
      :back_off_multiplier => 2,
      :max_reconnect_attempts => 0,
      :randomize => false,
      :backup => false,
      :timeout => -1,
      :connect_headers => {},
      :parse_timeout => 5,
      :logger => nil,
    }
    
    # for client
    client = Stomp::Client.new(hash)
    
    # for connection
    connection = Stomp::Connection.new(hash)
    
===Positional Parameter Usage

    client = Stomp::Client.new("test", "user", "localhost", 61613)
    client.send("/queue/mine", "hello world!")
    client.subscribe("/queue/mine") do |msg|
      p msg
    end

===Stomp URL Usage

    # Stomp URL :
    A Stomp URL must begin with 'stomp://' and can be in one of the following forms:

    stomp://host:port
    stomp://host.domain.tld:port
    stomp://login:passcode@host:port
    stomp://login:passcode@host.domain.tld:port
   
    e.g. c = Stomp::Client.new(urlstring)

===Failover + SSL Example URL Usage

    options = "initialReconnectDelay=5000&randomize=false&useExponentialBackOff=false"
    
    # remotehost1 uses SSL, remotehost2 doesn't
    client = Stomp::Client.new("failover:(stomp+ssl://login1:passcode1@remotehost1:61612,stomp://login2:passcode2@remotehost2:61613)?#{options}")
    
    client.publish("/queue/mine", "hello world!")
    client.subscribe("/queue/mine") do |msg|
      p msg
    end

===Historical Information

Up until March 2009 the project was maintained and primarily developed by Brian McCallister. 

===Source Code and Project URLs

  https://github.com/stompgem/stomp/

===Stomp Protocol Information :

  http://stomp.github.com/index.html

= Contributors

The following people have contributed to Stomp:

* <NAME>
* <NAME> <<EMAIL>>
* jstrachan 
* <NAME> <<EMAIL>>
* <NAME>√∏rensen <<EMAIL>>
* <NAME> <<EMAIL>>
* <NAME>
* kookster
* <NAME> <<EMAIL>>
* chirino
* <NAME>
* <NAME>
* <NAME>
* <NAME>
* <NAME><commit_msg>Update README per current work.<commit_after>==README

* (https://github.com/stompgem/stomp/)

===Overview

An implementation of the Stomp protocol for Ruby. See:

* [STOMP 1.0 and 1.1] (http://stomp.github.com/index.html)

===New

* Gem version 1.2.5. Restructure. Forks with modifcations will be affected. See _CHANGELOG.rdoc_ for details.
* Gem version 1.2.4. Stomp 1.1 heartbeat fix, autoflush capability, miscellaneous fixes.
* Gem version 1.2.3. Miscellaneous fixes, see changelog for details.
* Gem version 1.2.2. Performance and more SSL enhancements.
* Full support of SSL certificates is announced as of gem version 1.2.1.
* Support of Stomp protocol level 1.1 is announced as of gem version 1.2.0.

See _CHANGELOG.rdoc_ for details.

===Hash Login Example Usage (this is the recommended login technique)

  hash = {
      :hosts => [
        # First connect is to remotehost1
        {:login => "login1", :passcode => "<PASSWORD>", :host => "remotehost1", :port => 61612, :ssl => true},
        # First failover connect is to remotehost2
        {:login => "login2", :passcode => "<PASSWORD>", :host => "remotehost2", :port => 61613, :ssl => false},
        
      ],
      # These are the default parameters and do notneed to be set
      :reliable => true,                  # reliable (use failover)
      :initial_reconnect_delay => 0.01,   # initial delay before reconnect (secs)
      :max_reconnect_delay => 30.0,       # max delay before reconnect
      :use_exponential_back_off => true,  # increase delay between reconnect attpempts
      :back_off_multiplier => 2,          # next delay multiplier
      :max_reconnect_attempts => 0,       # retry forever, use # for maximum attempts
      :randomize => false,                # do not radomize hosts hash before reconnect
      :connect_headers => {},             # user supplied CONNECT headers
      :parse_timeout => 5,                # receive / read timeout, secs
      :logger => nil,                     # user suplied callback logger instance
      :dmh => false,                      # do not support multihomed IPV4 / IPV6 hosts during failover
    }
    
    # for client
    client = Stomp::Client.new(hash)
    
    # for connection
    connection = Stomp::Connection.new(hash)
    
===Positional Parameter Usage

    client = Stomp::Client.new("test", "user", "localhost", 61613)
    client.send("/queue/mine", "hello world!")
    client.subscribe("/queue/mine") do |msg|
      p msg
    end

===Stomp URL Usage

    # Stomp URL :
    A Stomp URL must begin with 'stomp://' and can be in one of the following forms:

    stomp://host:port
    stomp://host.domain.tld:port
    stomp://login:passcode@host:port
    stomp://login:passcode@host.domain.tld:port
   
    e.g. c = Stomp::Client.new(urlstring)

===Failover + SSL Example URL Usage

    options = "initialReconnectDelay=5000&randomize=false&useExponentialBackOff=false"
    
    # remotehost1 uses SSL, remotehost2 doesn't
    client = Stomp::Client.new("failover:(stomp+ssl://login1:passcode1@remotehost1:61612,stomp://login2:passcode2@remotehost2:61613)?#{options}")
    
    client.publish("/queue/mine", "hello world!")
    client.subscribe("/queue/mine") do |msg|
      p msg
    end

===Historical Information

Up until March 2009 the project was maintained and primarily developed by <NAME>. 

===Source Code and Project URLs

  https://github.com/stompgem/stomp/

===Stomp Protocol Information :

  http://stomp.github.com/index.html

= Contributors

The following people have contributed to Stomp:

* <NAME>
* <NAME> <<EMAIL>>
* jstrachan 
* <NAME> <<EMAIL>>
* <NAME>√∏rensen <<EMAIL>>
* <NAME>
* <NAME> <<EMAIL>>
* kookster
* <NAME> <<EMAIL>>
* chirino
* <NAME>
* <NAME>
* <NAME>
* <NAME>
* <NAME>
{'fraction_non_alphanumeric': 0.13374873206781626, 'fraction_numerical': 0.02390957832198232, 'mean_word_length': 3.130460801915021, 'pattern_counts': {'":': 0, '<': 52, '<?xml version=': 0, '>': 97, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 2, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1005499', 'n_tokens_mistral': 2338, 'n_tokens_neox': 2200, 'n_words': 639}