Upgrade to Ruby 2.7.0 (053f78e139).
This commit is contained in:
parent
55a4aeae8f
commit
4f0a1bc2fd
10 changed files with 66 additions and 47 deletions
|
|
@ -11,7 +11,7 @@ diff --git a/lib/mkmf.rb b/lib/mkmf.rb
|
|||
index 682eb46..e6b1445 100644
|
||||
--- a/lib/mkmf.rb
|
||||
+++ b/lib/mkmf.rb
|
||||
@@ -1918,7 +1918,7 @@ def configuration(srcdir)
|
||||
@@ -1930,7 +1930,7 @@ def configuration(srcdir)
|
||||
SHELL = /bin/sh
|
||||
|
||||
# V=0 quiet, V=1 verbose. other values don't work.
|
||||
|
|
|
|||
|
|
@ -13,11 +13,11 @@ diff --git a/common.mk b/common.mk
|
|||
index 5cfbc3d..3f0a82e 100644
|
||||
--- a/common.mk
|
||||
+++ b/common.mk
|
||||
@@ -162,7 +162,7 @@ ALLOBJS = $(NORMALMAINOBJ) $(MINIOBJS) $(COMMONOBJS) $(INITOBJS)
|
||||
@@ -163,7 +163,7 @@ ALLOBJS = $(NORMALMAINOBJ) $(MINIOBJS) $(COMMONOBJS) $(INITOBJS)
|
||||
GOLFOBJS = goruby.$(OBJEXT) golf_prelude.$(OBJEXT)
|
||||
|
||||
DEFAULT_PRELUDES = $(GEM_PRELUDE)
|
||||
-PRELUDE_SCRIPTS = $(srcdir)/prelude.rb $(DEFAULT_PRELUDES)
|
||||
-PRELUDE_SCRIPTS = $(DEFAULT_PRELUDES)
|
||||
+PRELUDE_SCRIPTS = $(srcdir)/prelude.rb $(DEFAULT_PRELUDES) $(OPTIONAL_PRELUDES)
|
||||
GEM_PRELUDE = $(srcdir)/gem_prelude.rb
|
||||
PRELUDES = {$(srcdir)}prelude.c {$(srcdir)}miniprelude.c
|
||||
|
|
@ -26,7 +26,7 @@ diff --git a/configure.ac b/configure.ac
|
|||
index 028ef7ca3e..cdeff87871 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3865,6 +3865,13 @@ AC_SUBST(rubyarchhdrdir)dnl
|
||||
@@ -3872,6 +3872,13 @@ AC_SUBST(rubyarchhdrdir)dnl
|
||||
AC_SUBST(sitearchhdrdir)dnl
|
||||
AC_SUBST(vendorarchhdrdir)dnl
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ diff --git a/configure.ac b/configure.ac
|
|||
index d261ea57b5..3c13076b82 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3082,6 +3082,11 @@ AS_IF([test ${multiarch+set}], [
|
||||
@@ -3089,6 +3089,11 @@ AS_IF([test ${multiarch+set}], [
|
||||
])
|
||||
|
||||
archlibdir='${libdir}/${arch}'
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ diff --git a/configure.ac b/configure.ac
|
|||
index c42436c23d..d261ea57b5 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3720,7 +3720,8 @@ AS_CASE(["$ruby_version_dir_name"],
|
||||
@@ -3727,7 +3727,8 @@ AS_CASE(["$ruby_version_dir_name"],
|
||||
ruby_version_dir=/'${ruby_version_dir_name}'
|
||||
|
||||
if test -z "${ruby_version_dir_name}"; then
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ diff --git a/configure.ac b/configure.ac
|
|||
index 3c13076b82..93af30321d 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3784,6 +3784,8 @@ AC_SUBST(vendorarchdir)dnl
|
||||
@@ -3791,6 +3791,8 @@ AC_SUBST(vendorarchdir)dnl
|
||||
AC_SUBST(CONFIGURE, "`echo $0 | sed 's|.*/||'`")dnl
|
||||
AC_SUBST(configure_args, "`echo "${ac_configure_args}" | sed 's/\\$/$$/g'`")dnl
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ diff --git a/configure.ac b/configure.ac
|
|||
index 93af30321d..bc13397e0e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3756,6 +3756,10 @@ AC_ARG_WITH(vendorarchdir,
|
||||
@@ -3763,6 +3763,10 @@ AC_ARG_WITH(vendorarchdir,
|
||||
[vendorarchdir=$withval],
|
||||
[vendorarchdir=${multiarch+'${rubysitearchprefix}/vendor_ruby'${ruby_version_dir}}${multiarch-'${vendorlibdir}/${sitearch}'}])
|
||||
|
||||
|
|
@ -26,7 +26,7 @@ index 93af30321d..bc13397e0e 100644
|
|||
AS_IF([test "${LOAD_RELATIVE+set}"], [
|
||||
AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE)
|
||||
RUBY_EXEC_PREFIX=''
|
||||
@@ -3780,6 +3784,7 @@ AC_SUBST(sitearchdir)dnl
|
||||
@@ -3787,6 +3791,7 @@ AC_SUBST(sitearchdir)dnl
|
||||
AC_SUBST(vendordir)dnl
|
||||
AC_SUBST(vendorlibdir)dnl
|
||||
AC_SUBST(vendorarchdir)dnl
|
||||
|
|
|
|||
|
|
@ -11,8 +11,8 @@ diff --git a/common.mk b/common.mk
|
|||
index 168dc52..20c218a 100644
|
||||
--- a/common.mk
|
||||
+++ b/common.mk
|
||||
@@ -1065,9 +1065,9 @@ $(MINIPRELUDE_C): $(COMPILE_PRELUDE)
|
||||
$(srcdir)/template/prelude.c.tmpl
|
||||
@@ -1086,9 +1086,9 @@ $(MINIPRELUDE_C): $(COMPILE_PRELUDE) $(BUILTIN_RB_SRCS)
|
||||
$(srcdir)/template/prelude.c.tmpl $(BUILTIN_RB_SRCS)
|
||||
|
||||
$(PRELUDE_C): $(COMPILE_PRELUDE) \
|
||||
- $(PRELUDE_SCRIPTS)
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ diff --git a/configure.ac b/configure.ac
|
|||
index 80b137e380..63cd3b4f8b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3671,9 +3671,6 @@ AS_CASE(["$target_os"],
|
||||
@@ -3678,9 +3678,6 @@ AS_CASE(["$target_os"],
|
||||
rubyw_install_name='$(RUBYW_INSTALL_NAME)'
|
||||
])
|
||||
|
||||
|
|
@ -30,7 +30,7 @@ index 80b137e380..63cd3b4f8b 100644
|
|||
rubyarchprefix=${multiarch+'${archlibdir}/${RUBY_BASE_NAME}'}${multiarch-'${rubylibprefix}/${arch}'}
|
||||
AC_ARG_WITH(rubyarchprefix,
|
||||
AS_HELP_STRING([--with-rubyarchprefix=DIR],
|
||||
@@ -3696,56 +3693,62 @@ AC_ARG_WITH(ridir,
|
||||
@@ -3703,56 +3700,62 @@ AC_ARG_WITH(ridir,
|
||||
AC_SUBST(ridir)
|
||||
AC_SUBST(RI_BASE_NAME)
|
||||
|
||||
|
|
@ -120,7 +120,7 @@ index 80b137e380..63cd3b4f8b 100644
|
|||
|
||||
AS_IF([test "${LOAD_RELATIVE+set}"], [
|
||||
AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE)
|
||||
@@ -3762,6 +3765,7 @@ AC_SUBST(sitearchincludedir)dnl
|
||||
@@ -3769,6 +3772,7 @@ AC_SUBST(sitearchincludedir)dnl
|
||||
AC_SUBST(arch)dnl
|
||||
AC_SUBST(sitearch)dnl
|
||||
AC_SUBST(ruby_version)dnl
|
||||
|
|
@ -237,7 +237,7 @@ diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb
|
|||
index b25068405d..e9fef4a311 100644
|
||||
--- a/test/rubygems/test_gem.rb
|
||||
+++ b/test/rubygems/test_gem.rb
|
||||
@@ -1315,7 +1315,8 @@ def test_self_use_paths
|
||||
@@ -1353,7 +1353,8 @@ def test_self_use_paths
|
||||
|
||||
def test_self_user_dir
|
||||
parts = [@userhome, '.gem', Gem.ruby_engine]
|
||||
|
|
@ -247,7 +247,7 @@ index b25068405d..e9fef4a311 100644
|
|||
|
||||
assert_equal File.join(parts), Gem.user_dir
|
||||
end
|
||||
@@ -1391,7 +1392,7 @@ def test_self_vendor_dir
|
||||
@@ -1429,7 +1430,7 @@ def test_self_vendor_dir
|
||||
vendordir(File.join(@tempdir, 'vendor')) do
|
||||
expected =
|
||||
File.join RbConfig::CONFIG['vendordir'], 'gems',
|
||||
|
|
@ -274,7 +274,7 @@ diff --git a/configure.ac b/configure.ac
|
|||
index a00f2b6776..999e2d6d5d 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -96,7 +96,7 @@ RUBY_BASE_NAME=`echo ruby | sed "$program_transform_name"`
|
||||
@@ -98,7 +98,7 @@ RUBY_BASE_NAME=`echo ruby | sed "$program_transform_name"`
|
||||
RUBYW_BASE_NAME=`echo rubyw | sed "$program_transform_name"`
|
||||
AC_SUBST(RUBY_BASE_NAME)
|
||||
AC_SUBST(RUBYW_BASE_NAME)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ index 1da3d93..65148a1 100644
|
|||
- libm_so = File.join(libdir, "libm.so")
|
||||
-when /linux/
|
||||
- libdir = '/lib'
|
||||
- case [0].pack('L!').size
|
||||
- case RbConfig::SIZEOF['void*']
|
||||
- when 4
|
||||
- # 32-bit ruby
|
||||
- libdir = '/lib32' if File.directory? '/lib32'
|
||||
|
|
@ -66,7 +66,7 @@ index 1da3d93..65148a1 100644
|
|||
- libm_so = "/usr/lib/libm.so"
|
||||
-when /solaris/
|
||||
- libdir = '/lib'
|
||||
- case [0].pack('L!').size
|
||||
- case RbConfig::SIZEOF['void*']
|
||||
- when 4
|
||||
- # 32-bit ruby
|
||||
- libdir = '/lib' if File.directory? '/lib'
|
||||
|
|
|
|||
75
ruby.spec
75
ruby.spec
|
|
@ -10,7 +10,7 @@
|
|||
#%%global milestone rc2
|
||||
|
||||
# Keep the revision enabled for pre-releases from SVN.
|
||||
%global revision 4a403e3f98
|
||||
%global revision 053f78e139
|
||||
|
||||
%global ruby_archive %{name}-%{ruby_version}
|
||||
|
||||
|
|
@ -30,30 +30,30 @@
|
|||
%global rubygems_dir %{_datadir}/rubygems
|
||||
|
||||
# Bundled libraries versions
|
||||
%global rubygems_version 3.1.0.pre1
|
||||
%global rubygems_version 3.1.0.pre3
|
||||
%global rubygems_molinillo_version 0.5.7
|
||||
|
||||
%global bundler_version 2.1.0.pre.1
|
||||
%global bundler_version 2.1.0.pre.3
|
||||
%global bundler_connection_pool_version 2.2.2
|
||||
%global bundler_fileutils_version 1.2.0
|
||||
%global bundler_fileutils_version 1.3.0
|
||||
%global bundler_molinillo_version 0.6.6
|
||||
%global bundler_net_http_persistent_version 3.1.0
|
||||
%global bundler_thor_version 0.20.3
|
||||
|
||||
%global bigdecimal_version 1.4.2
|
||||
%global did_you_mean_version 1.3.0
|
||||
%global bigdecimal_version 2.0.0.dev
|
||||
%global did_you_mean_version 1.3.1
|
||||
%global io_console_version 0.4.9
|
||||
%global irb_version 1.1.0.pre.3
|
||||
%global irb_version 1.1.0
|
||||
%global json_version 2.2.0
|
||||
%global minitest_version 5.11.3
|
||||
%global minitest_version 5.13.0
|
||||
%global net_telnet_version 0.2.0
|
||||
%global openssl_version 2.1.2
|
||||
%global power_assert_version 1.1.5
|
||||
%global psych_version 3.1.0
|
||||
%global racc_version 1.4.16.pre.1
|
||||
%global rake_version 12.3.3
|
||||
%global rake_version 13.0.1
|
||||
%global rdoc_version 6.2.0
|
||||
%global test_unit_version 3.3.3
|
||||
%global test_unit_version 3.3.4
|
||||
%global xmlrpc_version 0.3.0
|
||||
|
||||
# Might not be needed in the future, if we are lucky enough.
|
||||
|
|
@ -537,7 +537,7 @@ generates Ruby program.
|
|||
%setup -q -n %{ruby_archive}
|
||||
|
||||
# Remove bundled libraries to be sure they are not used.
|
||||
rm -rf ext/psych/yaml
|
||||
#rm -rf ext/psych/yaml
|
||||
rm -rf ext/fiddle/libffi*
|
||||
|
||||
%patch0 -p1
|
||||
|
|
@ -668,11 +668,9 @@ mkdir -p %{buildroot}%{gem_dir}/gems/bigdecimal-%{bigdecimal_version}/lib
|
|||
mkdir -p %{buildroot}%{_libdir}/gems/%{name}/bigdecimal-%{bigdecimal_version}/bigdecimal
|
||||
mv %{buildroot}%{ruby_libdir}/bigdecimal %{buildroot}%{gem_dir}/gems/bigdecimal-%{bigdecimal_version}/lib
|
||||
mv %{buildroot}%{ruby_libarchdir}/bigdecimal.so %{buildroot}%{_libdir}/gems/%{name}/bigdecimal-%{bigdecimal_version}
|
||||
mv %{buildroot}%{ruby_libarchdir}/bigdecimal/util.so %{buildroot}%{_libdir}/gems/%{name}/bigdecimal-%{bigdecimal_version}/bigdecimal
|
||||
mv %{buildroot}%{gem_dir}/specifications/default/bigdecimal-%{bigdecimal_version}.gemspec %{buildroot}%{gem_dir}/specifications
|
||||
ln -s %{gem_dir}/gems/bigdecimal-%{bigdecimal_version}/lib/bigdecimal %{buildroot}%{ruby_libdir}/bigdecimal
|
||||
ln -s %{_libdir}/gems/%{name}/bigdecimal-%{bigdecimal_version}/bigdecimal.so %{buildroot}%{ruby_libarchdir}/bigdecimal.so
|
||||
ln -s %{_libdir}/gems/%{name}/bigdecimal-%{bigdecimal_version}/bigdecimal/util.so %{buildroot}%{ruby_libarchdir}/bigdecimal/util.so
|
||||
|
||||
# TODO: Put help files into proper location.
|
||||
# https://bugs.ruby-lang.org/issues/15359
|
||||
|
|
@ -867,6 +865,10 @@ sed -i '/def test_mdns_each_address$/,/^ end$/ s/^/#/' test/resolv/test_mdns.rb
|
|||
MSPECOPTS="$MSPECOPTS -P 'Process.clock_getres matches the clock in practice for Process::CLOCK'"
|
||||
%endif
|
||||
|
||||
# Avoid TestEnv#test_fetch test failure due to did_you_mean gem presence.
|
||||
# https://bugs.ruby-lang.org/issues/16361
|
||||
sed -i "/'key not found: \"test\"'/ s/'/\//g" test/ruby/test_env.rb
|
||||
|
||||
make check TESTS="-v $DISABLE_TESTS" MSPECOPT="-fs $MSPECOPTS"
|
||||
|
||||
%files
|
||||
|
|
@ -915,26 +917,32 @@ make check TESTS="-v $DISABLE_TESTS" MSPECOPT="-fs $MSPECOPTS"
|
|||
%exclude %{ruby_libdir}/json.rb
|
||||
%exclude %{ruby_libdir}/openssl.rb
|
||||
%exclude %{ruby_libdir}/psych.rb
|
||||
%{ruby_libdir}/benchmark
|
||||
%{ruby_libdir}/cgi
|
||||
%{ruby_libdir}/csv
|
||||
%{ruby_libdir}/delegate
|
||||
%{ruby_libdir}/digest
|
||||
%{ruby_libdir}/drb
|
||||
%{ruby_libdir}/e2mmap
|
||||
%{ruby_libdir}/fiddle
|
||||
%{ruby_libdir}/fileutils
|
||||
%{ruby_libdir}/forwardable
|
||||
%{ruby_libdir}/getoptlong
|
||||
%{ruby_libdir}/logger
|
||||
%{ruby_libdir}/matrix
|
||||
%{ruby_libdir}/net
|
||||
%{ruby_libdir}/observer
|
||||
%{ruby_libdir}/open3
|
||||
%{ruby_libdir}/optparse
|
||||
%{ruby_libdir}/pstore
|
||||
%{ruby_libdir}/reline
|
||||
%{ruby_libdir}/rexml
|
||||
%{ruby_libdir}/rinda
|
||||
%{ruby_libdir}/ripper
|
||||
%{ruby_libdir}/rss
|
||||
%{ruby_libdir}/shell
|
||||
%{ruby_libdir}/singleton
|
||||
%{ruby_libdir}/syslog
|
||||
%{ruby_libdir}/thwait
|
||||
%{ruby_libdir}/timeout
|
||||
%{ruby_libdir}/tracer
|
||||
%{ruby_libdir}/unicode_normalize
|
||||
%{ruby_libdir}/uri
|
||||
|
|
@ -1028,6 +1036,7 @@ make check TESTS="-v $DISABLE_TESTS" MSPECOPT="-fs $MSPECOPTS"
|
|||
%dir %{ruby_libarchdir}/io
|
||||
%{ruby_libarchdir}/io/nonblock.so
|
||||
%{ruby_libarchdir}/io/wait.so
|
||||
%{ruby_libarchdir}/monitor.so
|
||||
%{ruby_libarchdir}/nkf.so
|
||||
%{ruby_libarchdir}/objspace.so
|
||||
%{ruby_libarchdir}/pathname.so
|
||||
|
|
@ -1068,35 +1077,45 @@ make check TESTS="-v $DISABLE_TESTS" MSPECOPT="-fs $MSPECOPTS"
|
|||
%exclude %{gem_dir}/cache/*
|
||||
|
||||
# TODO: Gemify these libraries
|
||||
%{gem_dir}/specifications/default/cmath-1.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/csv-3.1.1.gemspec
|
||||
%{gem_dir}/specifications/default/benchmark-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/cgi-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/csv-3.1.2.gemspec
|
||||
%{gem_dir}/specifications/default/date-2.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/dbm-1.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/delegate-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/e2mmap-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/etc-1.0.1.gemspec
|
||||
%{gem_dir}/specifications/default/fcntl-1.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/fiddle-1.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/fileutils-1.2.0.gemspec
|
||||
%{gem_dir}/specifications/default/fileutils-1.3.0.gemspec
|
||||
%{gem_dir}/specifications/default/forwardable-1.2.0.gemspec
|
||||
%{gem_dir}/specifications/default/gdbm-2.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/getoptlong-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/ipaddr-1.2.2.gemspec
|
||||
%{gem_dir}/specifications/default/logger-1.3.0.gemspec
|
||||
%{gem_dir}/specifications/default/matrix-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/mutex_m-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/net-pop-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/net-smtp-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/observer-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/open3-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/ostruct-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/prime-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/reline-0.0.2.gemspec
|
||||
%{gem_dir}/specifications/default/rexml-3.2.2.gemspec
|
||||
%{gem_dir}/specifications/default/pstore-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/readline-0.0.1.pre.1.gemspec
|
||||
%{gem_dir}/specifications/default/readline-ext-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/reline-0.0.7.gemspec
|
||||
%{gem_dir}/specifications/default/rexml-3.2.3.gemspec
|
||||
%{gem_dir}/specifications/default/rss-0.2.8.gemspec
|
||||
%{gem_dir}/specifications/default/scanf-1.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/sdbm-1.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/shell-0.7.gemspec
|
||||
%{gem_dir}/specifications/default/stringio-0.0.2.gemspec
|
||||
%{gem_dir}/specifications/default/strscan-1.0.0.gemspec
|
||||
%{gem_dir}/specifications/default/sync-0.5.0.gemspec
|
||||
%{gem_dir}/specifications/default/thwait-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/singleton-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/stringio-0.0.3.gemspec
|
||||
%{gem_dir}/specifications/default/strscan-1.0.3.gemspec
|
||||
%{gem_dir}/specifications/default/timeout-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/tracer-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/webrick-1.4.2.gemspec
|
||||
%{gem_dir}/specifications/default/uri-0.10.0.gemspec
|
||||
%{gem_dir}/specifications/default/webrick-1.5.0.gemspec
|
||||
%{gem_dir}/specifications/default/yaml-0.1.0.gemspec
|
||||
%{gem_dir}/specifications/default/zlib-1.0.0.gemspec
|
||||
|
||||
%files -n rubygems-devel
|
||||
|
|
@ -1221,7 +1240,7 @@ make check TESTS="-v $DISABLE_TESTS" MSPECOPT="-fs $MSPECOPTS"
|
|||
|
||||
%changelog
|
||||
* Mon Jul 01 2019 Vít Ondruch <vondruch@redhat.com> - 2.7.0-1
|
||||
- Upgrade to Ruby 2.7.0 (4a403e3f98).
|
||||
- Upgrade to Ruby 2.7.0 (053f78e139).
|
||||
- Drop useless %%{rubygems_default_filter}.
|
||||
- Fix checksec 2.0+ compatibility.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue