numpy.rb 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. module Docs
  2. class Numpy < FileScraper
  3. self.name = 'NumPy'
  4. self.type = 'sphinx'
  5. self.root_path = 'index.html'
  6. self.links = {
  7. home: 'https://www.numpy.org/',
  8. code: 'https://github.com/numpy/numpy'
  9. }
  10. html_filters.push 'numpy/entries', 'numpy/clean_html', 'sphinx/clean_html'
  11. # .main contains more than the page's content alone, but we need something
  12. # that includes the navigation bar as well in order to guess the type of
  13. # most pages.
  14. options[:container] = '.main'
  15. options[:skip_patterns] = [
  16. /.*(?<!\.html)\z/,
  17. /\Arelease\/.*-notes.html\Z/,
  18. /\Agenerated\/numpy\.chararray\.[\w\-]+.html\z/ # duplicate
  19. ]
  20. options[:attribution] = <<-HTML
  21. &copy; 2005&ndash;2024 NumPy Developers<br>
  22. Licensed under the 3-clause BSD License.
  23. HTML
  24. version '2.0' do
  25. self.release = '2.0.1'
  26. self.base_url = "https://numpy.org/doc/#{self.version}/"
  27. options[:container] = nil
  28. end
  29. version '1.23' do
  30. self.release = '1.23.0'
  31. self.base_url = "https://numpy.org/doc/#{self.version}/"
  32. options[:container] = nil
  33. end
  34. version '1.22' do
  35. self.release = '1.22.4'
  36. self.base_url = "https://numpy.org/doc/#{self.version}/"
  37. options[:container] = nil
  38. end
  39. version '1.21' do
  40. self.release = '1.21.6'
  41. self.base_url = "https://numpy.org/doc/#{self.version}/"
  42. options[:container] = nil
  43. end
  44. version '1.20' do
  45. self.release = '1.20.3'
  46. self.base_url = "https://numpy.org/doc/#{self.version}/"
  47. options[:container] = nil
  48. end
  49. version '1.19' do
  50. self.release = '1.19.0'
  51. self.base_url = "https://numpy.org/doc/#{self.version}/"
  52. end
  53. version '1.18' do
  54. self.release = '1.18.5'
  55. self.base_url = "https://numpy.org/doc/#{self.version}/"
  56. end
  57. version '1.17' do
  58. self.release = '1.17.0'
  59. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  60. end
  61. version '1.16' do
  62. self.release = '1.16.1'
  63. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  64. end
  65. version '1.15' do
  66. self.release = '1.15.4'
  67. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  68. end
  69. version '1.14' do
  70. self.release = '1.14.5'
  71. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  72. end
  73. version '1.13' do
  74. self.release = '1.13.0'
  75. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  76. end
  77. version '1.12' do
  78. self.release = '1.12.0'
  79. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  80. end
  81. version '1.11' do
  82. self.release = '1.11.0'
  83. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  84. end
  85. version '1.10' do
  86. self.release = '1.10.4'
  87. self.base_url = "https://docs.scipy.org/doc/numpy-#{self.release}/reference/"
  88. end
  89. def get_latest_version(opts)
  90. get_latest_github_release('numpy', 'numpy', opts)
  91. end
  92. end
  93. end