Bug 249595

Summary: databases/cassandra3: depends on python 2.x
Product: Ports & Packages Reporter: Steve Wills <swills>
Component: Individual Port(s)Assignee: Rene Ladan <rene>
Status: Closed FIXED    
Severity: Affects Only Me CC: language.devel, lapo, rene
Priority: --- Flags: bugzilla: maintainer-feedback? (language.devel)
Version: Latest   
Hardware: Any   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=250005
Bug Depends on:    
Bug Blocks: 249337    
Attachments:
Description Flags
Update to version 3.11.9. none

Description Steve Wills freebsd_committer freebsd_triage 2020-09-24 16:20:27 UTC
This port will be removed on 2020-12-31 if not fixed
Comment 1 Angelo Polo 2020-09-25 14:16:23 UTC
Thanks for the reminder. Python 3 support was added to Cassandra 4 and most work on the project is still on getting the Cassandra 4 GA release out so I don't imagine there will be a lot of effort to backport for Cassandra 3.  I will see what can be done on this - whether this is something I can implement on my own or coordinate.
Comment 2 Lapo Luchini 2020-10-06 13:13:26 UTC
I tried the 3.6+ patch in PR 250005 and, while it compiles cleanly, it still installs a "cqlsh" that depends on 2.7.

% fgrep 'pyver in' /usr/local/bin/cqlsh
for pyver in 2.7; do
Comment 3 Angelo Polo 2020-10-07 11:49:33 UTC
Have started gathering info on this now that 4.0-beta2 and 3.11.8 are submitted and awaiting feedback/commit. Will keep everyone informed on progress.
Comment 4 Angelo Polo 2020-10-30 11:06:48 UTC
cassandra3 with python3 is available for testing. 

The C* source it is based off is HEAD (from a few days ago) of the 3.11 branch. I'm planning on merging in any newer commits when the upstream project's 3.11.9 release is final and submitting a patch then for the port.

If anyone can contribute to testing that would be great.
Clone the 'python3' branch as follows (after wiping out databases/cassandra3):
git clone --single-branch --branch python3 https://github.com/polo-language/cassandra3.git <your-ports-tree>/databases/cassandra3

There have been dependency updates since 3.11.8, so please download the latest mvn repo to  your distfiles/:
https://drive.google.com/uc?id=1TrYB-_cNs9yBFuLAoPgfrn4KEs3W0O1D&export=download
Comment 5 Rene Ladan freebsd_committer freebsd_triage 2020-11-08 11:37:16 UTC
(In reply to Angelo Polo from comment #4)
Will the upcoming 3.11.9 patch include/supersede the patches in PR 2500005 ?
Comment 6 Angelo Polo 2020-11-08 13:16:29 UTC
(In reply to Rene Ladan from comment #5)
 Yes, it will supersede the update to 3.11.8 in bug #250005.
Comment 7 Angelo Polo 2020-11-08 13:17:51 UTC
Created attachment 219455 [details]
Update to version 3.11.9.

Update to version 3.11.9.

SVN files added:
A       files/patch-doc_source___templates_indexcontent.html
A       files/patch-doc_source___util_cql.py
A       files/patch-pylib_cassandra-cqlsh-tests.sh

This patch supersedes bug #250005.

Updated maven repo must be manually copied to distfiles for patch testing and uploaded to LOCAL as part of the commit process. It is available at the following link:
https://drive.google.com/uc?id=1lsmwqPM1GkuqrJf_Nv4ZGDpWw81fHArN&export=download
(This is different from the mvn repo linked to above!)
Comment 9 Lapo Luchini 2020-11-10 08:37:36 UTC
I tested this and it works nicely; `pkg autoremove` was finally able to get rid of python2.
Comment 10 Rene Ladan freebsd_committer freebsd_triage 2020-11-10 21:33:40 UTC
The latest patch builds fine on 11.4, 12.1, 12.2 and 13 for amd64 and i386.
Comment 11 Rene Ladan freebsd_committer freebsd_triage 2020-11-15 13:44:57 UTC
Should we use https://downloads.apache.org/cassandra/3.11.9/ instead of a "local" archive?
Comment 12 Angelo Polo 2020-11-15 15:38:31 UTC
(In reply to Rene Ladan from comment #11)
Are you referring to the maven repository? There's nothing like that getting published by Apache. The dependencies are intended to be downloaded (and cached) at build-time. Since access to the network is not allowed during a FreeBSD port build, the dependencies must be downloaded, packaged up, and checksummed ahead of time. If there is an alternative to this procedure that would save having to assemble the repository for every new version, but I'm not aware of one. For discussion on this you can check out the following mailing list message: https://lists.freebsd.org/pipermail/freebsd-ports/2016-June/103442.html
Comment 13 Rene Ladan freebsd_committer freebsd_triage 2020-11-17 21:14:29 UTC
(In reply to Angelo Polo from comment #12)
Yes, I was referring to the Maven repository. I guess we will just have to use a "custom" download for now.
Comment 14 Rene Ladan freebsd_committer freebsd_triage 2020-11-17 22:06:42 UTC
Patch committed, thanks
Comment 15 commit-hook freebsd_committer freebsd_triage 2020-11-17 22:06:44 UTC
A commit references this bug:

Author: rene
Date: Tue Nov 17 22:06:20 UTC 2020
New revision: 555590
URL: https://svnweb.freebsd.org/changeset/ports/555590

Log:
  databases/cassandra3: update to 3.11.9

  The port now uses Python 3 so unexpire it.

  PR:		249595
  Submitted by:	maintainer
  Reported by:	swills (py27 overview)

Changes:
  head/databases/cassandra3/Makefile
  head/databases/cassandra3/distinfo
  head/databases/cassandra3/files/patch-bin_cassandra
  head/databases/cassandra3/files/patch-build.xml
  head/databases/cassandra3/files/patch-doc_Makefile
  head/databases/cassandra3/files/patch-doc_source___templates_indexcontent.html
  head/databases/cassandra3/files/patch-doc_source___util_cql.py
  head/databases/cassandra3/files/patch-pylib_cassandra-cqlsh-tests.sh
  head/databases/cassandra3/pkg-plist