Index: head/www/redmine/Makefile =================================================================== --- head/www/redmine/Makefile (revision 527336) +++ head/www/redmine/Makefile (revision 527337) @@ -1,113 +1,117 @@ # Created by: Bernhard Froehlich # $FreeBSD$ PORTNAME= redmine PORTVERSION= 3.4.11 PORTREVISION= 3 CATEGORIES= www MASTER_SITES= https://www.redmine.org/releases/ MAINTAINER= ruby@FreeBSD.org COMMENT= Flexible project management web application LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/doc/COPYING +DEPRECATED= EOLed upstream +# Remove the port before 2020Q3 +EXPIRATION_DATE= 2020-06-25 + RUN_DEPENDS= rubygem-bundler>=1.5.0:sysutils/rubygem-bundler \ rubygem-rails4>=4.2.11.1:www/rubygem-rails4 \ rubygem-jquery-rails>=3.1.4:www/rubygem-jquery-rails \ rubygem-coderay>=1.1.1:textproc/rubygem-coderay \ rubygem-request_store>=1.0.5:devel/rubygem-request_store \ rubygem-mime-types>=3.0:misc/rubygem-mime-types \ rubygem-protected_attributes>=0:devel/rubygem-protected_attributes \ rubygem-actionpack-xml_parser1>=0:textproc/rubygem-actionpack-xml_parser1 \ rubygem-roadie3>=3.2.1<4:mail/rubygem-roadie3 \ rubygem-roadie-rails>=1.1.1:mail/rubygem-roadie-rails \ rubygem-mimemagic>=0:misc/rubygem-mimemagic \ rubygem-mail>=2.6.4:mail/rubygem-mail \ rubygem-nokogiri18>=1.8.1:textproc/rubygem-nokogiri18 \ rubygem-i18n>=0.7:devel/rubygem-i18n \ rubygem-rails-html-sanitizer>=1.0.3:textproc/rubygem-rails-html-sanitizer \ rubygem-rbpdf>=1.19.6:print/rubygem-rbpdf \ rubygem-net-ldap>=0.12:net/rubygem-net-ldap \ rubygem-ruby-openid>=2.3:net/rubygem-ruby-openid \ rubygem-rack-openid>=0:www/rubygem-rack-openid \ rubygem-rake>=0:devel/rubygem-rake USES= cpe USE_RUBY= yes CONFLICTS_INSTALL= redmine4 NO_ARCH= yes NO_BUILD= yes USERS= ${WWWOWN} GROUPS= ${WWWGRP} PLIST_SUB= WWWOWN=${WWWOWN} WWWGRP=${WWWGRP} SUB_LIST= RUBY_NAME=${RUBY_NAME} OPTIONS_DEFINE= MYSQL POSTGRESQL MARKDOWN RMAGIC THIN OPTIONS_DEFAULT=MYSQL MARKDOWN RMAGIC THIN OPTIONS_SUB= yes POSTGRESQL_DESC=Enable PostgreSQL support MARKDOWN_DESC= Enable Markdown support RMAGIC_DESC= Enable Gantt charts support THIN_DESC= Use Thin WEB server MYSQL_DESC= MySQL database support (via mysql2 rubygem) NO_OPTIONS_SORT= yes MYSQL_RUN_DEPENDS= rubygem-mysql204>=0.4.6<0.5.0:databases/rubygem-mysql204 POSTGRESQL_RUN_DEPENDS= rubygem-pg018>=0.18.1:databases/rubygem-pg018 MARKDOWN_RUN_DEPENDS= rubygem-redcarpet>=3.4.0:textproc/rubygem-redcarpet RMAGIC_RUN_DEPENDS= rubygem-rmagick>=2.16.0:graphics/rubygem-rmagick THIN_RUN_DEPENDS= rubygem-thin>=1.6.2:www/rubygem-thin THIN_SUB_LIST= WWWOWN=${WWWOWN} WWWGRP=${WWWGRP} THIN_VARS= USE_RC_SUBR=redmine post-extract: @${RM} ${WRKSRC}/.hgignore ${WRKSRC}/.travis.yml @${MV} ${WRKSRC}/config/settings.yml ${WRKSRC}/config/settings.yml.sample @${MV} ${WRKSRC}/config/database.yml.example ${WRKSRC}/config/database.yml.sample @${TOUCH} ${WRKSRC}/log/development.log post-patch: @${FIND} ${WRKSRC} -name '*.bak' -delete pre-install: ${MKDIR} ${WRKSRC}/public/plugin_assets do-install: ${MKDIR} ${STAGEDIR}${WWWDIR} ${MKDIR} ${STAGEDIR}${WWWDIR}/tmp/pids ${MKDIR} ${STAGEDIR}${WWWDIR}/bundler.d ${MKDIR} ${STAGEDIR}${WWWDIR}/tmp/pdf ${TOUCH} ${STAGEDIR}${WWWDIR}/tmp/pdf/empty ${MKDIR} ${STAGEDIR}${WWWDIR}/tmp/test ${TOUCH} ${STAGEDIR}${WWWDIR}/tmp/test/empty ${MKDIR} ${STAGEDIR}${WWWDIR}/tmp/thumbnails ${TOUCH} ${STAGEDIR}${WWWDIR}/tmp/thumbnails/empty ${MKDIR} ${STAGEDIR}${WWWDIR}/log ${TOUCH} ${STAGEDIR}${WWWDIR}/log/development.log cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR} ${TOUCH} ${STAGEDIR}${WWWDIR}/Gemfile.lock do-install-MYSQL-on: ${CP} ${FILESDIR}/mysql.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-POSTGRESQL-on: ${CP} ${FILESDIR}/pg.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-MARKDOWN-on: ${CP} ${FILESDIR}/markdown.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-RMAGIC-on: ${CP} ${FILESDIR}/rmagic.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-THIN-on: ${CP} ${FILESDIR}/thin.rb ${STAGEDIR}${WWWDIR}/bundler.d post-install: (cd ${STAGEDIR}${WWWDIR} && ${RM} Gemfile.lock && bundle install --local) .include Index: head/www/redmine4/Makefile =================================================================== --- head/www/redmine4/Makefile (revision 527336) +++ head/www/redmine4/Makefile (revision 527337) @@ -1,104 +1,111 @@ # Created by: Bernhard Froehlich # $FreeBSD$ PORTNAME= redmine -PORTVERSION= 4.0.5 -PORTREVISION= 4 +PORTVERSION= 4.0.6 CATEGORIES= www MASTER_SITES= https://www.redmine.org/releases/ PKGNAMESUFFIX= 4 MAINTAINER= mikael@FreeBSD.org COMMENT= Flexible project management web application LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/doc/COPYING BROKEN= conflicting dependencies RUN_DEPENDS= rubygem-bundler>=1.5.0:sysutils/rubygem-bundler \ rubygem-rails52>=5.2.4.1:www/rubygem-rails52 \ rubygem-rouge312>=3.12.0:textproc/rubygem-rouge312 \ rubygem-request_store>=1.0.5:devel/rubygem-request_store \ rubygem-mini_mime>=1.0.1:mail/rubygem-mini_mime \ rubygem-actionpack-xml_parser52>=0:textproc/rubygem-actionpack-xml_parser52 \ rubygem-roadie-rails52>=1.3.0:mail/rubygem-roadie-rails52 \ rubygem-mimemagic>=0:misc/rubygem-mimemagic \ rubygem-mail>=2.7.1:mail/rubygem-mail \ rubygem-nokogiri>=1.10.0:textproc/rubygem-nokogiri \ rubygem-i18n>=0.7:devel/rubygem-i18n \ rubygem-sprockets3>=3.7.2:devel/rubygem-sprockets3 \ rubygem-rbpdf>=1.19.6:print/rubygem-rbpdf \ rubygem-net-ldap>=0.16:net/rubygem-net-ldap \ rubygem-ruby-openid>=2.9.2:net/rubygem-ruby-openid \ rubygem-rack-openid>=0:www/rubygem-rack-openid \ rubygem-rake>=0:devel/rubygem-rake USES= cpe USE_RUBY= yes -CONFLICTS_INSTALL= redmine - NO_ARCH= yes NO_BUILD= yes USERS= ${WWWOWN} GROUPS= ${WWWGRP} PLIST_SUB= WWWOWN=${WWWOWN} WWWGRP=${WWWGRP} SUB_LIST= RUBY_NAME=${RUBY_NAME} OPTIONS_DEFINE= MYSQL POSTGRESQL MARKDOWN RMAGIC THIN -OPTIONS_DEFAULT=MYSQL MARKDOWN RMAGIC THIN +OPTIONS_DEFAULT=MYSQL MARKDOWN THIN OPTIONS_SUB= yes POSTGRESQL_DESC=Enable PostgreSQL support MARKDOWN_DESC= Enable Markdown support RMAGIC_DESC= Enable Gantt charts support THIN_DESC= Use Thin WEB server MYSQL_DESC= MySQL database support (via mysql2 rubygem) NO_OPTIONS_SORT= yes MYSQL_RUN_DEPENDS= rubygem-mysql2>=0.5.0:databases/rubygem-mysql2 POSTGRESQL_RUN_DEPENDS= rubygem-pg>=1.1.4:databases/rubygem-pg MARKDOWN_RUN_DEPENDS= rubygem-redcarpet>=3.4.0:textproc/rubygem-redcarpet RMAGIC_RUN_DEPENDS= rubygem-rmagick>=2.16.0:graphics/rubygem-rmagick THIN_RUN_DEPENDS= rubygem-thin>=1.6.2:www/rubygem-thin THIN_SUB_LIST= WWWOWN=${WWWOWN} WWWGRP=${WWWGRP} THIN_VARS= USE_RC_SUBR=redmine + +.include + +.if ${PORT_OPTIONS:MRMAGIC} +# rubygem-mini_magick-4.10.1 wants imagemagick7 +# and rubygem-rmagick-2.16.0_6 wants imagemagick6 +# fixed in 4.1.0: https://www.redmine.org/projects/redmine/repository/revisions/18366 +# but not in 4.0-stable as of 2020/02/13 +BROKEN= conflicting dependencies +.endif post-extract: @${RM} -r ${WRKSRC}/.hgignore ${WRKSRC}/.gitignore ${WRKSRC}/.github \ ${WRKSRC}/files/delete.me ${WRKSRC}/log/delete.me @${MV} ${WRKSRC}/config/settings.yml ${WRKSRC}/config/settings.yml.sample @${MV} ${WRKSRC}/config/database.yml.example ${WRKSRC}/config/database.yml.sample post-patch: @${RM} ${WRKSRC}/Gemfile.orig do-install: ${MKDIR} ${STAGEDIR}${WWWDIR} ${MKDIR} ${STAGEDIR}${WWWDIR}/bundler.d ${MKDIR} ${STAGEDIR}${WWWDIR}/log ${MKDIR} ${STAGEDIR}${WWWDIR}/public/plugin_assets ${MKDIR} ${STAGEDIR}${WWWDIR}/tmp cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR} ${TOUCH} ${STAGEDIR}${WWWDIR}/Gemfile.lock do-install-MYSQL-on: ${CP} ${FILESDIR}/mysql.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-POSTGRESQL-on: ${CP} ${FILESDIR}/pg.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-MARKDOWN-on: ${CP} ${FILESDIR}/markdown.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-RMAGIC-on: ${CP} ${FILESDIR}/rmagic.rb ${STAGEDIR}${WWWDIR}/bundler.d do-install-THIN-on: ${CP} ${FILESDIR}/thin.rb ${STAGEDIR}${WWWDIR}/bundler.d post-install: (cd ${STAGEDIR}${WWWDIR} && ${RM} Gemfile.lock && bundle install --local) .include Index: head/www/redmine4/bsd.redmine.mk =================================================================== --- head/www/redmine4/bsd.redmine.mk (revision 527336) +++ head/www/redmine4/bsd.redmine.mk (revision 527337) @@ -1,80 +1,80 @@ # Module that simplifies installation of Redmine plugins. # # Date created: 2010-09-12 # Whom: Eygene Ryabinkin # # $FreeBSD$ # # We're assuming standard plugin installation sequence that is described # in the https://www.redmine.org/projects/redmine/wiki/Plugins # # Basically, we need the following variables to be defined: # - REDMINE_PLUGIN_NAME: the name of the plugin; # - WWWDIR: the location of the Redmine installation; # the default value is ${PREFIX}/www/redmine; # the directory must lie under ${PREFIX} or such configuration # will be IGNORE'd; # - WRKSRC must be set to the root directory of the plugin contents: # we will copy all objects in this directory to the plugin's # destination directory, excluding all files named *.orig. # # PLIST will be generated automatically, there is no need to worry # about it. But if you will need to use your own (even the standard # packaging list in ${PORTDIR}/pkg-plist), set the variable PLIST # pointing to that file. # # You can override the target 'do-build', but in this case, you should # remember that the target named 'redmine-plugin-plist' does the # automated generation of the PLIST: use it if you need. # # # Here is an example of a simple Makefile for Redmine plugin: # {{{ # PORTNAME= me-the-plugin # PORTVERSION= 1.0 # CATEGORIES= www # MASTER_SITES= http://cool.org.name/some/path/ # # MAINTAINER= you@your.org # COMMENT= Another cool plugin for Redmine # # REDMINE_PLUGIN_NAME= redmine_http_auth # # .include "${.CURDIR}/../../www/redmine/bsd.redmine.mk" # }}} -PKGNAMEPREFIX?= redmine- +PKGNAMEPREFIX?= redmine4- -RUN_DEPENDS+= redmine>=2.0:www/redmine +RUN_DEPENDS+= redmine4>=4.0:www/redmine4 USE_RUBY= yes .if !defined(PLIST) PLIST= ${WRKDIR}/PLIST _GEN_PLIST= YesPlease .endif WWWDIR?= ${PREFIX}/www/redmine WWWDIR_REL= ${WWWDIR:S|^${PREFIX}/||} .if ${WWWDIR_REL} == ${WWWDIR} IGNORE= WWWDIR is not a child of PREFIX (${PREFIX}) .endif .if !defined(do-build) do-build: redmine-plugin-plist @${DO_NADA} .endif redmine-plugin-plist: .if defined(_GEN_PLIST) cd ${WRKSRC} && ${FIND} . -type f | ${GREP} -v '\.orig$$' | ${SED} -e's|^\.|${WWWDIR_REL}/plugins/${REDMINE_PLUGIN_NAME}|' >> ${PLIST} cd ${WRKSRC} && ${FIND} -d . -empty -type d | ${SED} -e's|^\.|@dir ${WWWDIR_REL}/plugins/${REDMINE_PLUGIN_NAME}|' >> ${PLIST} .else @${DO_NADA} .endif do-install: ${MKDIR} "${STAGEDIR}${WWWDIR}/plugins/${REDMINE_PLUGIN_NAME}" ${TAR} -C "${WRKSRC}" -cf - --exclude '*.orig' . | ${TAR} -C "${STAGEDIR}${WWWDIR}/plugins/${REDMINE_PLUGIN_NAME}" -xf - .include Index: head/www/redmine4/distinfo =================================================================== --- head/www/redmine4/distinfo (revision 527336) +++ head/www/redmine4/distinfo (revision 527337) @@ -1,3 +1,3 @@ -TIMESTAMP = 1573401952 -SHA256 (redmine-4.0.5.tar.gz) = 64eabe6867fd5d14d1b4c584417b9b71fbb9b68a019400eeb03e1f2147c369e8 -SIZE (redmine-4.0.5.tar.gz) = 2519900 +TIMESTAMP = 1582635822 +SHA256 (redmine-4.0.6.tar.gz) = 173c4de0ce0a8b2b1e340b6f50d88dfc4ec3a3a7aae11acde201a15613aec8c4 +SIZE (redmine-4.0.6.tar.gz) = 2520461 Index: head/www/redmine4/files/patch-Gemfile =================================================================== --- head/www/redmine4/files/patch-Gemfile (revision 527336) +++ head/www/redmine4/files/patch-Gemfile (revision 527337) @@ -1,106 +1,104 @@ ---- Gemfile.orig 2019-10-19 09:33:33 UTC +--- Gemfile.orig 2020-02-25 14:28:07 UTC +++ Gemfile -@@ -2,9 +2,9 @@ source 'https://rubygems.org' - +@@ -3,8 +3,8 @@ source 'https://rubygems.org' gem "bundler", ">= 1.5.0" --gem "rails", "5.2.3" + gem "rails", "5.2.4.1" -gem "rouge", "~> 3.3.0" -gem "request_store", "1.0.5" -+gem "rails", "5.2.4.1" +gem "rouge", "~> 3.12.0" +gem "request_store", ">= 1.0.5" gem "mini_mime", "~> 1.0.1" gem "actionpack-xml_parser" gem "roadie-rails", "~> 1.3.0" @@ -13,7 +13,7 @@ gem "mail", "~> 2.7.1" gem "csv", "~> 3.0.1" if RUBY_VERSION >= "2.3" && RUBY_VERSION < "2.6" gem "nokogiri", (RUBY_VERSION >= "2.3" ? "~> 1.10.0" : "~> 1.9.1") -gem "i18n", "~> 0.7.0" +gem "i18n", ">= 0.7" gem "xpath", "< 3.2.0" if RUBY_VERSION < "2.3" # TODO: Remove the following line when #32223 is fixed @@ -21,7 +21,7 @@ gem "sprockets", "~> 3.7.2" # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin] -gem "rbpdf", "~> 1.19.6" +gem "rbpdf", "~> 1.19", ">= 1.19.6" # Optional gem for LDAP authentication group :ldap do @@ -34,63 +34,6 @@ group :openid do gem "rack-openid" end -platforms :mri, :mingw, :x64_mingw do - # Optional gem for exporting the gantt to a PNG file, not supported with jruby - group :rmagick do - gem "rmagick", "~> 2.16.0" - end - - # Optional Markdown support, not for JRuby - group :markdown do - gem "redcarpet", "~> 3.4.0" - end -end - -# Include database gems for the adapters found in the database -# configuration file -require 'erb' -require 'yaml' -database_file = File.join(File.dirname(__FILE__), "config/database.yml") -if File.exist?(database_file) - database_config = YAML::load(ERB.new(IO.read(database_file)).result) - adapters = database_config.values.map {|c| c['adapter']}.compact.uniq - if adapters.any? - adapters.each do |adapter| - case adapter - when 'mysql2' - gem "mysql2", "~> 0.5.0", :platforms => [:mri, :mingw, :x64_mingw] - when /postgresql/ - gem "pg", "~> 1.1.4", :platforms => [:mri, :mingw, :x64_mingw] - when /sqlite3/ - gem "sqlite3", "~>1.3.12", :platforms => [:mri, :mingw, :x64_mingw] - when /sqlserver/ - gem "tiny_tds", "~> 1.0.5", :platforms => [:mri, :mingw, :x64_mingw] - gem "activerecord-sqlserver-adapter", :platforms => [:mri, :mingw, :x64_mingw] - else - warn("Unknown database adapter `#{adapter}` found in config/database.yml, use Gemfile.local to load your own database gems") - end - end - else - warn("No adapter found in config/database.yml, please configure it first") - end -else - warn("Please configure your config/database.yml first") -end - -group :development do - gem "yard" -end - -group :test do - gem "rails-dom-testing" -- gem "mocha" +- gem 'mocha', '>= 1.4.0' - gem "simplecov", "~> 0.14.1", :require => false - # For running system tests - gem 'puma', '~> 3.7' - gem "capybara", '~> 2.13' - gem "selenium-webdriver" -end - local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local") if File.exists?(local_gemfile) eval_gemfile local_gemfile @@ -99,4 +42,8 @@ end # Load plugins' Gemfiles Dir.glob File.expand_path("../plugins/*/{Gemfile,PluginGemfile}", __FILE__) do |file| eval_gemfile file +end + +Dir["#{File.dirname(__FILE__)}/bundler.d/*.rb"].each do |bundle| + self.instance_eval(Bundler.read_file(bundle)) end