net-http 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/net/http.rb CHANGED
@@ -379,7 +379,7 @@ module Net #:nodoc:
379
379
  class HTTP < Protocol
380
380
 
381
381
  # :stopdoc:
382
- VERSION = "0.3.1"
382
+ VERSION = "0.3.2"
383
383
  Revision = %q$Revision$.split[1]
384
384
  HTTPVersion = '1.1'
385
385
  begin
@@ -452,6 +452,11 @@ module Net #:nodoc:
452
452
  # headers = {'Content-type' => 'application/json; charset=UTF-8'}
453
453
  # Net::HTTP.get(uri, headers)
454
454
  #
455
+ # Related:
456
+ #
457
+ # - Net::HTTP::Get: request class for \HTTP method +GET+.
458
+ # - Net::HTTP#get: convenience method for \HTTP method +GET+.
459
+ #
455
460
  def HTTP.get(uri_or_host, path_or_headers = nil, port = nil)
456
461
  get_response(uri_or_host, path_or_headers, port).body
457
462
  end
@@ -460,7 +465,7 @@ module Net #:nodoc:
460
465
  # Net::HTTP.get_response(hostname, path, port = 80) -> http_response
461
466
  # Net::HTTP:get_response(uri, headers = {}, port = uri.port) -> http_response
462
467
  #
463
- # Like Net::HTTP.get, but returns an Net::HTTPResponse object
468
+ # Like Net::HTTP.get, but returns a Net::HTTPResponse object
464
469
  # instead of the body string.
465
470
  def HTTP.get_response(uri_or_host, path_or_headers = nil, port = nil, &block)
466
471
  if path_or_headers && !path_or_headers.is_a?(Hash)
@@ -479,16 +484,31 @@ module Net #:nodoc:
479
484
  end
480
485
  end
481
486
 
482
- # Posts data to the specified URI object.
487
+ # Posts data to a host; returns a Net::HTTPResponse object.
483
488
  #
484
- # Example:
489
+ # Argument +url+ must be a URL;
490
+ # argument +data+ must be a string:
485
491
  #
486
- # require 'net/http'
487
- # require 'uri'
492
+ # _uri = uri.dup
493
+ # _uri.path = '/posts'
494
+ # data = '{"title": "foo", "body": "bar", "userId": 1}'
495
+ # headers = {'content-type': 'application/json'}
496
+ # res = Net::HTTP.post(_uri, data, headers) # => #<Net::HTTPCreated 201 Created readbody=true>
497
+ # puts res.body
488
498
  #
489
- # Net::HTTP.post URI('http://www.example.com/api/search'),
490
- # { "q" => "ruby", "max" => "50" }.to_json,
491
- # "Content-Type" => "application/json"
499
+ # Output:
500
+ #
501
+ # {
502
+ # "title": "foo",
503
+ # "body": "bar",
504
+ # "userId": 1,
505
+ # "id": 101
506
+ # }
507
+ #
508
+ # Related:
509
+ #
510
+ # - Net::HTTP::Post: request class for \HTTP method +POST+.
511
+ # - Net::HTTP#post: convenience method for \HTTP method +POST+.
492
512
  #
493
513
  def HTTP.post(url, data, header = nil)
494
514
  start(url.hostname, url.port,
@@ -497,22 +517,25 @@ module Net #:nodoc:
497
517
  }
498
518
  end
499
519
 
500
- # Posts HTML form data to the specified URI object.
501
- # The form data must be provided as a Hash mapping from String to String.
502
- # Example:
520
+ # Posts data to a host; returns a Net::HTTPResponse object.
503
521
  #
504
- # { "cmd" => "search", "q" => "ruby", "max" => "50" }
522
+ # Argument +url+ must be a URI;
523
+ # argument +data+ must be a hash:
505
524
  #
506
- # This method also does Basic Authentication if and only if +url+.user exists.
507
- # But userinfo for authentication is deprecated (RFC3986).
508
- # So this feature will be removed.
525
+ # _uri = uri.dup
526
+ # _uri.path = '/posts'
527
+ # data = {title: 'foo', body: 'bar', userId: 1}
528
+ # res = Net::HTTP.post_form(_uri, data) # => #<Net::HTTPCreated 201 Created readbody=true>
529
+ # puts res.body
509
530
  #
510
- # Example:
511
- #
512
- # require 'net/http'
531
+ # Output:
513
532
  #
514
- # Net::HTTP.post_form URI('http://www.example.com/search.cgi'),
515
- # { "q" => "ruby", "max" => "50" }
533
+ # {
534
+ # "title": "foo",
535
+ # "body": "bar",
536
+ # "userId": "1",
537
+ # "id": 101
538
+ # }
516
539
  #
517
540
  def HTTP.post_form(url, params)
518
541
  req = Post.new(url)
@@ -528,17 +551,26 @@ module Net #:nodoc:
528
551
  # HTTP session management
529
552
  #
530
553
 
531
- # The default port to use for HTTP requests; defaults to 80.
554
+ # Returns intger +80+, the default port to use for HTTP requests:
555
+ #
556
+ # Net::HTTP.default_port # => 80
557
+ #
532
558
  def HTTP.default_port
533
559
  http_default_port()
534
560
  end
535
561
 
536
- # The default port to use for HTTP requests; defaults to 80.
562
+ # Returns integer +80+, the default port to use for HTTP requests:
563
+ #
564
+ # Net::HTTP.http_default_port # => 80
565
+ #
537
566
  def HTTP.http_default_port
538
567
  80
539
568
  end
540
569
 
541
- # The default port to use for HTTPS requests; defaults to 443.
570
+ # Returns integer +443+, the default port to use for HTTPS requests:
571
+ #
572
+ # Net::HTTP.https_default_port # => 443
573
+ #
542
574
  def HTTP.https_default_port
543
575
  443
544
576
  end
@@ -548,19 +580,42 @@ module Net #:nodoc:
548
580
  end
549
581
 
550
582
  # :call-seq:
551
- # HTTP.start(address, port, p_addr, p_port, p_user, p_pass) {|http| ... }
552
- # HTTP.start(address, port=nil, p_addr=:ENV, p_port=nil, p_user=nil, p_pass=nil, opt) {|http| ... }
553
- # Creates a new \Net::HTTP object,
554
- # opens a TCP connection and \HTTP session.
583
+ # HTTP.start(address, port = nil, p_addr = :ENV, p_port = nil, p_user = nil, p_pass = nil, opts) -> http
584
+ # HTTP.start(address, port = nil, p_addr = :ENV, p_port = nil, p_user = nil, p_pass = nil, opts) {|http| ... } -> object
555
585
  #
556
- # Argument +address+ is the hostname or IP address of the server.
586
+ # Creates a new \Net::HTTP object, +http+, via \Net::HTTP.new:
587
+ #
588
+ # Net::HTTP.new(address, port, p_addr, p_port, p_user, p_pass)
589
+ #
590
+ # - For arguments +hostname+ through +p_pass+, see Net::HTTP.new.
591
+ # - For argument +opts+, see below.
592
+ #
593
+ # Note: If +port+ is +nil+ and <tt>opts[:use_ssl]</tt> is a truthy value,
594
+ # the value passed to +new+ is Net::HTTP.https_default_port, not +port+.
595
+ #
596
+ # With no block given:
597
+ #
598
+ # - Calls <tt>http.start</tt> with no block (see #start),
599
+ # which opens a TCP connection and \HTTP session.
600
+ # - Returns +http+.
601
+ # - The caller should call #finish to close the session:
602
+ #
603
+ # http = Net::HTTP.start(hostname)
604
+ # http.started? # => true
605
+ # http.finish
606
+ # http.started? # => false
557
607
  #
558
608
  # With a block given:
559
609
  #
560
- # - Passes the object to the given block,
561
- # which may make any number of requests to the host.
562
- # - Closes the \HTTP session on block exit.
563
- # - Returns the block's value.
610
+ # - Calls <tt>http.start</tt> with the block (see #start), which:
611
+ #
612
+ # - Opens a TCP connection and \HTTP session.
613
+ # - Calls the block,
614
+ # which may make any number of requests to the host.
615
+ # - Closes the \HTTP session and TCP connection on block exit.
616
+ # - Returns the block's value +object+.
617
+ #
618
+ # - Returns +object+.
564
619
  #
565
620
  # Example:
566
621
  #
@@ -585,19 +640,7 @@ module Net #:nodoc:
585
640
  # "completed": false
586
641
  # }
587
642
  #
588
- # With no block given, returns the \Net::HTTP object;
589
- # the caller should call #finish to close the session.
590
- #
591
- # Other arguments:
592
- #
593
- # - +port+: Server port number.
594
- # - +p_addr+: Proxy address.
595
- # - +p_port+: Proxy port.
596
- # - +p_user+: Proxy user name.
597
- # - +p_pass+: Proxy password.
598
- # - +opts+: Optional options hash.
599
- #
600
- # The options hash +opts+ sets certain values,
643
+ # If the last argument given is a hash, it is the +opts+ hash,
601
644
  # where each key is a method or accessor to be called,
602
645
  # and its value is the value to be set.
603
646
  #
@@ -648,25 +691,113 @@ module Net #:nodoc:
648
691
  alias newobj new # :nodoc:
649
692
  end
650
693
 
651
- # Creates a new Net::HTTP object without opening a TCP connection or
652
- # HTTP session.
694
+ # Returns a new Net::HTTP object +http+
695
+ # (but does not open a TCP connection or HTTP session).
696
+ #
697
+ # <b>No Proxy</b>
698
+ #
699
+ # With only string argument +hostname+ given
700
+ # (and <tt>ENV['http_proxy']</tt> undefined or +nil+),
701
+ # the returned +http+:
702
+ #
703
+ # - Has the given address.
704
+ # - Has the default port number, Net::HTTP.default_port (80).
705
+ # - Has no proxy.
706
+ #
707
+ # Example:
708
+ #
709
+ # http = Net::HTTP.new(hostname)
710
+ # # => #<Net::HTTP jsonplaceholder.typicode.com:80 open=false>
711
+ # http.address # => "jsonplaceholder.typicode.com"
712
+ # http.port # => 80
713
+ # http.proxy? # => false
714
+ #
715
+ # With integer argument +port+ also given,
716
+ # the returned +http+ has the given port:
717
+ #
718
+ # http = Net::HTTP.new(hostname, 8000)
719
+ # # => #<Net::HTTP jsonplaceholder.typicode.com:8000 open=false>
720
+ # http.port # => 8000
721
+ #
722
+ # <b>Proxy Using Argument +p_addr+ as a \String</b>
723
+ #
724
+ # When argument +p_addr+ is a string hostname,
725
+ # the returned +http+ has a proxy:
726
+ #
727
+ # http = Net::HTTP.new(hostname, nil, 'proxy.example')
728
+ # # => #<Net::HTTP jsonplaceholder.typicode.com:80 open=false>
729
+ # http.proxy? # => true
730
+ # http.proxy_address # => "proxy.example"
731
+ # # These use default values.
732
+ # http.proxy_port # => 80
733
+ # http.proxy_user # => nil
734
+ # http.proxy_pass # => nil
735
+ #
736
+ # The port, username, and password for the proxy may also be given:
737
+ #
738
+ # http = Net::HTTP.new(hostname, nil, 'proxy.example', 8000, 'pname', 'ppass')
739
+ # # => #<Net::HTTP jsonplaceholder.typicode.com:80 open=false>
740
+ # http.proxy? # => true
741
+ # http.proxy_address # => "proxy.example"
742
+ # http.proxy_port # => 8000
743
+ # http.proxy_user # => "pname"
744
+ # http.proxy_pass # => "ppass"
745
+ #
746
+ # <b>Proxy Using <tt>ENV['http_proxy']</tt></b>
747
+ #
748
+ # When environment variable <tt>'http_proxy'</tt>
749
+ # is set to a \URI string,
750
+ # the returned +http+ will have that URI as its proxy;
751
+ # note that the \URI string must have a protocol
752
+ # such as <tt>'http'</tt> or <tt>'https'</tt>:
753
+ #
754
+ # ENV['http_proxy'] = 'http://example.com'
755
+ # # => "http://example.com"
756
+ # http = Net::HTTP.new(hostname)
757
+ # # => #<Net::HTTP jsonplaceholder.typicode.com:80 open=false>
758
+ # http.proxy? # => true
759
+ # http.address # => "jsonplaceholder.typicode.com"
760
+ # http.proxy_address # => "example.com"
761
+ #
762
+ # The \URI string may include proxy username, password, and port number:
763
+ #
764
+ # ENV['http_proxy'] = 'http://pname:ppass@example.com:8000'
765
+ # # => "http://pname:ppass@example.com:8000"
766
+ # http = Net::HTTP.new(hostname)
767
+ # # => #<Net::HTTP jsonplaceholder.typicode.com:80 open=false>
768
+ # http.proxy_port # => 8000
769
+ # http.proxy_user # => "pname"
770
+ # http.proxy_pass # => "ppass"
771
+ #
772
+ # <b>Argument +p_no_proxy+</b>
773
+ #
774
+ # You can use argument +p_no_proxy+ to reject certain proxies:
775
+ #
776
+ # - Reject a certain address:
777
+ #
778
+ # http = Net::HTTP.new('example.com', nil, 'proxy.example', 8000, 'pname', 'ppass', 'proxy.example')
779
+ # http.proxy_address # => nil
780
+ #
781
+ # - Reject certain domains or subdomains:
653
782
  #
654
- # The +address+ should be a DNS hostname or IP address, the +port+ is the
655
- # port the server operates on. If no +port+ is given the default port for
656
- # HTTP or HTTPS is used.
783
+ # http = Net::HTTP.new('example.com', nil, 'my.proxy.example', 8000, 'pname', 'ppass', 'proxy.example')
784
+ # http.proxy_address # => nil
657
785
  #
658
- # If none of the +p_+ arguments are given, the proxy host and port are
659
- # taken from the +http_proxy+ environment variable (or its uppercase
660
- # equivalent) if present. If the proxy requires authentication you must
661
- # supply it by hand. See URI::Generic#find_proxy for details of proxy
662
- # detection from the environment. To disable proxy detection set +p_addr+
663
- # to nil.
786
+ # - Reject certain addresses and port combinations:
664
787
  #
665
- # If you are connecting to a custom proxy, +p_addr+ specifies the DNS name
666
- # or IP address of the proxy host, +p_port+ the port to use to access the
667
- # proxy, +p_user+ and +p_pass+ the username and password if authorization
668
- # is required to use the proxy, and p_no_proxy hosts which do not
669
- # use the proxy.
788
+ # http = Net::HTTP.new('example.com', nil, 'proxy.example', 8000, 'pname', 'ppass', 'proxy.example:1234')
789
+ # http.proxy_address # => "proxy.example"
790
+ #
791
+ # http = Net::HTTP.new('example.com', nil, 'proxy.example', 8000, 'pname', 'ppass', 'proxy.example:8000')
792
+ # http.proxy_address # => nil
793
+ #
794
+ # - Reject a list of the types above delimited using a comma:
795
+ #
796
+ # http = Net::HTTP.new('example.com', nil, 'proxy.example', 8000, 'pname', 'ppass', 'my.proxy,proxy.example:8000')
797
+ # http.proxy_address # => nil
798
+ #
799
+ # http = Net::HTTP.new('example.com', nil, 'my.proxy', 8000, 'pname', 'ppass', 'my.proxy,proxy.example:8000')
800
+ # http.proxy_address # => nil
670
801
  #
671
802
  def HTTP.new(address, port = nil, p_addr = :ENV, p_port = nil, p_user = nil, p_pass = nil, p_no_proxy = nil)
672
803
  http = super address, port
@@ -733,6 +864,11 @@ module Net #:nodoc:
733
864
  end
734
865
  end
735
866
 
867
+ # Returns a string representation of +self+:
868
+ #
869
+ # Net::HTTP.new(hostname).inspect
870
+ # # => "#<Net::HTTP jsonplaceholder.typicode.com:80 open=false>"
871
+ #
736
872
  def inspect
737
873
  "#<#{self.class} #{@address}:#{@port} open=#{started?}>"
738
874
  end
@@ -740,11 +876,51 @@ module Net #:nodoc:
740
876
  # *WARNING* This method opens a serious security hole.
741
877
  # Never use this method in production code.
742
878
  #
743
- # Sets an output stream for debugging.
879
+ # Sets the output stream for debugging:
744
880
  #
745
881
  # http = Net::HTTP.new(hostname)
746
- # http.set_debug_output $stderr
747
- # http.start { .... }
882
+ # File.open('t.tmp', 'w') do |file|
883
+ # http.set_debug_output(file)
884
+ # http.start
885
+ # http.get('/nosuch/1')
886
+ # http.finish
887
+ # end
888
+ # puts File.read('t.tmp')
889
+ #
890
+ # Output:
891
+ #
892
+ # opening connection to jsonplaceholder.typicode.com:80...
893
+ # opened
894
+ # <- "GET /nosuch/1 HTTP/1.1\r\nAccept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3\r\nAccept: */*\r\nUser-Agent: Ruby\r\nHost: jsonplaceholder.typicode.com\r\n\r\n"
895
+ # -> "HTTP/1.1 404 Not Found\r\n"
896
+ # -> "Date: Mon, 12 Dec 2022 21:14:11 GMT\r\n"
897
+ # -> "Content-Type: application/json; charset=utf-8\r\n"
898
+ # -> "Content-Length: 2\r\n"
899
+ # -> "Connection: keep-alive\r\n"
900
+ # -> "X-Powered-By: Express\r\n"
901
+ # -> "X-Ratelimit-Limit: 1000\r\n"
902
+ # -> "X-Ratelimit-Remaining: 999\r\n"
903
+ # -> "X-Ratelimit-Reset: 1670879660\r\n"
904
+ # -> "Vary: Origin, Accept-Encoding\r\n"
905
+ # -> "Access-Control-Allow-Credentials: true\r\n"
906
+ # -> "Cache-Control: max-age=43200\r\n"
907
+ # -> "Pragma: no-cache\r\n"
908
+ # -> "Expires: -1\r\n"
909
+ # -> "X-Content-Type-Options: nosniff\r\n"
910
+ # -> "Etag: W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\"\r\n"
911
+ # -> "Via: 1.1 vegur\r\n"
912
+ # -> "CF-Cache-Status: MISS\r\n"
913
+ # -> "Server-Timing: cf-q-config;dur=1.3000000762986e-05\r\n"
914
+ # -> "Report-To: {\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=yOr40jo%2BwS1KHzhTlVpl54beJ5Wx2FcG4gGV0XVrh3X9OlR5q4drUn2dkt5DGO4GDcE%2BVXT7CNgJvGs%2BZleIyMu8CLieFiDIvOviOY3EhHg94m0ZNZgrEdpKD0S85S507l1vsEwEHkoTm%2Ff19SiO\"}],\"group\":\"cf-nel\",\"max_age\":604800}\r\n"
915
+ # -> "NEL: {\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}\r\n"
916
+ # -> "Server: cloudflare\r\n"
917
+ # -> "CF-RAY: 778977dc484ce591-DFW\r\n"
918
+ # -> "alt-svc: h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400\r\n"
919
+ # -> "\r\n"
920
+ # reading 2 bytes...
921
+ # -> "{}"
922
+ # read 2 bytes
923
+ # Conn keep-alive
748
924
  #
749
925
  def set_debug_output(output)
750
926
  warn 'Net::HTTP#set_debug_output called after HTTP started', uplevel: 1 if started?
@@ -768,8 +944,24 @@ module Net #:nodoc:
768
944
  # body encoding.
769
945
  attr_reader :response_body_encoding
770
946
 
771
- # Set the encoding to use for the response body. If given a String, find
772
- # the related Encoding.
947
+ # Sets the encoding to be used for the response body;
948
+ # returns the encoding.
949
+ #
950
+ # The given +value+ may be:
951
+ #
952
+ # - An Encoding object.
953
+ # - The name of an encoding.
954
+ # - An alias for an encoding name.
955
+ #
956
+ # See {Encoding}[https://docs.ruby-lang.org/en/master/Encoding.html].
957
+ #
958
+ # Examples:
959
+ #
960
+ # http = Net::HTTP.new(hostname)
961
+ # http.response_body_encoding = Encoding::US_ASCII # => #<Encoding:US-ASCII>
962
+ # http.response_body_encoding = 'US-ASCII' # => "US-ASCII"
963
+ # http.response_body_encoding = 'ASCII' # => "ASCII"
964
+ #
773
965
  def response_body_encoding=(value)
774
966
  value = Encoding.find(value) if value.is_a?(String)
775
967
  @response_body_encoding = value
@@ -781,12 +973,37 @@ module Net #:nodoc:
781
973
  attr_writer :proxy_user
782
974
  attr_writer :proxy_pass
783
975
 
784
- # The IP address to connect to/used to connect to
976
+ # Returns the IP address for the connection.
977
+ #
978
+ # If the session has not been started,
979
+ # returns the value set by #ipaddr=,
980
+ # or +nil+ if it has not been set:
981
+ #
982
+ # http = Net::HTTP.new(hostname)
983
+ # http.ipaddr # => nil
984
+ # http.ipaddr = '172.67.155.76'
985
+ # http.ipaddr # => "172.67.155.76"
986
+ #
987
+ # If the session has been started,
988
+ # returns the IP address from the socket:
989
+ #
990
+ # http = Net::HTTP.new(hostname)
991
+ # http.start
992
+ # http.ipaddr # => "172.67.155.76"
993
+ # http.finish
994
+ #
785
995
  def ipaddr
786
996
  started? ? @socket.io.peeraddr[3] : @ipaddr
787
997
  end
788
998
 
789
- # Set the IP address to connect to
999
+ # Sets the IP address for the connection:
1000
+ #
1001
+ # http = Net::HTTP.new(hostname)
1002
+ # http.ipaddr # => nil
1003
+ # http.ipaddr = '172.67.155.76'
1004
+ # http.ipaddr # => "172.67.155.76"
1005
+ #
1006
+ # The IP address may not be set if the session has been started.
790
1007
  def ipaddr=(addr)
791
1008
  raise IOError, "ipaddr value changed, but session already started" if started?
792
1009
  @ipaddr = addr
@@ -811,12 +1028,18 @@ module Net #:nodoc:
811
1028
  # Net::WriteTimeout is not raised on Windows.
812
1029
  attr_reader :write_timeout
813
1030
 
814
- # Maximum number of times to retry an idempotent request in case of
1031
+ # Sets the maximum number of times to retry an idempotent request in case of
815
1032
  # Net::ReadTimeout, IOError, EOFError, Errno::ECONNRESET,
816
1033
  # Errno::ECONNABORTED, Errno::EPIPE, OpenSSL::SSL::SSLError,
817
1034
  # Timeout::Error.
818
- # Should be a non-negative integer number. Zero means no retries.
819
- # The default value is 1.
1035
+ # The initial value is 1.
1036
+ #
1037
+ # Argument +retries+ must be a non-negative numeric value:
1038
+ #
1039
+ # http = Net::HTTP.new(hostname)
1040
+ # http.max_retries = 2 # => 2
1041
+ # http.max_retries # => 2
1042
+ #
820
1043
  def max_retries=(retries)
821
1044
  retries = retries.to_int
822
1045
  if retries < 0
@@ -827,13 +1050,27 @@ module Net #:nodoc:
827
1050
 
828
1051
  attr_reader :max_retries
829
1052
 
830
- # Setter for the read_timeout attribute.
1053
+ # Sets the read timeout, in seconds, for +self+ to integer +sec+;
1054
+ # the initial value is 60.
1055
+ #
1056
+ # Argument +sec+ must be a non-negative numeric value:
1057
+ #
1058
+ # http = Net::HTTP.new(hostname)
1059
+ # http.read_timeout # => 60
1060
+ # http.get('/todos/1') # => #<Net::HTTPOK 200 OK readbody=true>
1061
+ # http.read_timeout = 0
1062
+ # http.get('/todos/1') # Raises Net::ReadTimeout.
1063
+ #
831
1064
  def read_timeout=(sec)
832
1065
  @socket.read_timeout = sec if @socket
833
1066
  @read_timeout = sec
834
1067
  end
835
1068
 
836
- # Setter for the write_timeout attribute.
1069
+ # Sets the write timeout, in seconds, for +self+ to integer +sec+;
1070
+ # the initial value is 60.
1071
+ #
1072
+ # Argument +sec+ must be a non-negative numeric value.
1073
+ #
837
1074
  def write_timeout=(sec)
838
1075
  @socket.write_timeout = sec if @socket
839
1076
  @write_timeout = sec
@@ -1160,7 +1397,7 @@ module Net #:nodoc:
1160
1397
  #
1161
1398
  # This class is obsolete. You may pass these same parameters directly to
1162
1399
  # Net::HTTP.new. See Net::HTTP.new for details of the arguments.
1163
- def HTTP.Proxy(p_addr = :ENV, p_port = nil, p_user = nil, p_pass = nil)
1400
+ def HTTP.Proxy(p_addr = :ENV, p_port = nil, p_user = nil, p_pass = nil) #:nodoc:
1164
1401
  return self unless p_addr
1165
1402
 
1166
1403
  Class.new(self) {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: net-http
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - NARUSE, Yui
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-12-05 00:00:00.000000000 Z
11
+ date: 2022-12-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: uri