Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package libspatialindex, rtree #32000

Open
DRKWang opened this issue Jun 17, 2021 · 44 comments
Open

Package libspatialindex, rtree #32000

DRKWang opened this issue Jun 17, 2021 · 44 comments

Comments

@DRKWang
Copy link

DRKWang commented Jun 17, 2021

Rtree is a ctypes Python wrapper of libspatialindex that provides a number of advanced spatial indexing features for the spatially curious Python user. These features include:

Nearest neighbor search

Intersection search

Multi-dimensional indexes

Clustered indexes (store Python pickles directly with index entries)

Bulk loading

Deletion

Disk serialization

Custom storage implementation (to implement spatial indexing in ZODB, for example).

Although it is named as Rtree, it also provides options for its variants in terms of splitting. There are 3 ways for it, that is, linear, quadratic, and R* tree splitting. The difference of them can be found here https://en.wikipedia.org/wiki/R-tree.

We create a normal package for Rtree.

In addition,
CGAL also provides an implementation called "Intersecting Sequences of dD Iso-oriented Boxes" for the R tree, https://doc.cgal.org/latest/Box_intersection_d/index.html#Chapter_Intersecting_Sequences_of_dD_Iso-oriented_Boxes.

CC: @mkoeppe

Component: packages: optional

Keywords: Rtree, spatial index

Author: Binshuai Wang, Matthias Koeppe

Branch/Commit: public/32000 @ dfc5410

Issue created by migration from https://trac.sagemath.org/ticket/32000

@DRKWang DRKWang added this to the sage-9.4 milestone Jun 17, 2021
@DRKWang

This comment has been minimized.

@DRKWang DRKWang changed the title Package Rtree Package R tree Jun 17, 2021
@DRKWang
Copy link
Author

DRKWang commented Jun 18, 2021

Branch: public/32000

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 18, 2021

comment:4

The branch does not exist - did you push it?

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 23, 2021

Commit: a60179a

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 23, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 23, 2021

comment:6

This branch does not have your new files.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2021

Changed commit from a60179a to eb62e8a

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

c18ed02add new package rtree and libspatialindex
eb62e8aFor updating public/32000

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 25, 2021

comment:8

the .txt files - the file names should all be lowercase. See the files for the existing packages. You can see the names that we use by typing grep SYSTEM= tox.ini
We do not distinguish the various Debian variants (there should be no separate file for ubuntu, devuan, etc.)

First line of SPKG.rst should have a brief description, see format for other packages

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 25, 2021

comment:9

checksums.ini - please add a line upstream_url as explained here https://doc.sagemath.org/html/en/developer/packaging.html#upstream-urls

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 25, 2021

comment:10

build/pkgs/rtree/SPKG.rst is referring to "AABBTree", that's probably a copy-paste error

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2021

Changed commit from eb62e8a to c552a1e

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

c552a1ebuild/pkgs/libspatialindex: Make it a normal package

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 25, 2021

comment:12

I've added full packaging as a normal package to libspatialindex because homebrew does not provide a package for it

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 25, 2021

Author: Binshuai Wang, Matthias Koeppe

@mkoeppe mkoeppe changed the title Package R tree Package libspatialindex, rtree Jun 25, 2021
@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 25, 2021

comment:13

The file build/pkgs/rtree/requirements.txt needs to be removed because it makes the package a "pip package", so checksums.ini is being ignored

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 25, 2021

comment:14

Does rtree use the executables mvrtree from libspatialindex, or does it link to library? In the latter case, the spkg-configure.m4 should be changed to use AC_LINK_IFELSE. You can see a usage example in build/pkgs/ntl/spkg-configure.m4

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2021

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

2330ca9add new package rtree and libspatialindex
5902e3cbuild/pkgs/libspatialindex: Make it a normal package

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2021

Changed commit from c552a1e to 5902e3c

@DRKWang
Copy link
Author

DRKWang commented Jun 30, 2021

comment:16

Replying to @mkoeppe:

I've added full packaging as a normal package to libspatialindex because homebrew does not provide a package for it

I just found that homebrew provides a package for libspatialindex but it is in a different name: spatialindex, which is why I did not add it in .distros. You may check it from here https://repology.org/project/spatialindex/versions#homebrew

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 30, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

791aafdupdate SPKG.rst, correct distros, add url in checksums.ini, revise spkg-configure

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 30, 2021

Changed commit from 5902e3c to 791aafd

@DRKWang
Copy link
Author

DRKWang commented Jun 30, 2021

comment:18

Replying to @mkoeppe:

The file build/pkgs/rtree/requirements.txt needs to be removed because it makes the package a "pip package", so checksums.ini is being ignored

I have deleted it.

@DRKWang
Copy link
Author

DRKWang commented Jun 30, 2021

comment:19

Replying to @mkoeppe:

the .txt files - the file names should all be lowercase. See the files for the existing packages. You can see the names that we use by typing grep SYSTEM= tox.ini
We do not distinguish the various Debian variants (there should be no separate file for ubuntu, devuan, etc.)

First line of SPKG.rst should have a brief description, see format for other packages

The names of those files in .distros have been changed following this format.

@mkoeppe
Copy link
Contributor

mkoeppe commented Jul 1, 2021

comment:27

Thanks for fixing this - that was a tricky one.

@DRKWang
Copy link
Author

DRKWang commented Jul 1, 2021

comment:28

Replying to @mkoeppe:

Thanks for fixing this - that was a tricky one.

No problem, thanks for your encouragement.

@mkoeppe mkoeppe modified the milestones: sage-9.4, sage-9.5 Jul 19, 2021
@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 11, 2021

Changed commit from 720ff79 to 674d982

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 11, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

594bb26make a whole change for RealSet class with using 'self.__class__' and '@classmethod', as well as adding a new subclass RealSet_rtree.
dfc5410Merge branch 'public/32000' of trac.sagemath.org:sage into realset_rtree
674d982"Fixed 2 bugs:

@DRKWang
Copy link
Author

DRKWang commented Sep 11, 2021

comment:31

I just made a wrong commit, which is 674d982, for this ticket. Is there any way to retract it?

@mkoeppe
Copy link
Contributor

mkoeppe commented Sep 11, 2021

comment:32

git reset --hard HEAD~ takes away the top commit on your branch.

Using git push --force you can send the updated branch to the remote.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 11, 2021

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 11, 2021

Changed commit from 674d982 to dfc5410

@DRKWang
Copy link
Author

DRKWang commented Sep 11, 2021

comment:34

Replying to @mkoeppe:

git reset --hard HEAD~ takes away the top commit on your branch.

Using git push --force you can send the updated branch to the remote.

I see. Thanks!

@mkoeppe mkoeppe modified the milestones: sage-9.5, sage-9.6 Dec 18, 2021
@mkoeppe
Copy link
Contributor

mkoeppe commented Feb 1, 2022

comment:37

Docbuild fails

OSError: /sage/local/var/lib/sage/venv-python3.10.2/lib/python3.10/site-packages/sage/geometry/cone.py:docstring of sage.geometry.cone.ConvexRationalPolyhedralCone.polar:6: WARNING: Bullet list ends without a blank line; unexpected unindent.

@mkoeppe
Copy link
Contributor

mkoeppe commented Feb 1, 2022

comment:38

actually #32170

@mkoeppe mkoeppe modified the milestones: sage-9.6, sage-9.7 Apr 2, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Aug 6, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.8, sage-9.9 Jan 7, 2023
@mkoeppe
Copy link
Contributor

mkoeppe commented Feb 12, 2023

Branch has merge conflicts

@mkoeppe mkoeppe removed this from the sage-10.0 milestone Mar 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants