Distribute IfcFM on PyPI

This commit is contained in:
Dion Moult
2024-06-26 11:57:43 +10:00
parent 4976074b18
commit 16e98e1400
5 changed files with 114 additions and 0 deletions
+38
View File
@@ -0,0 +1,38 @@
# IfcFM - IFC for facility management
# Copyright (C) 2020-2024 Dion Moult <dion@thinkmoult.com>
#
# This file is part of IfcFM.
#
# IfcFM is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# IfcFM is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with IfcFM. If not, see <http://www.gnu.org/licenses/>.
VERSION:=$(shell cat ../../VERSION)
SED:=sed -i
ifeq ($(UNAME_S),Darwin)
SED:=sed -i '' -e
endif
.PHONY: qa
qa:
black .
.PHONY: dist
dist:
rm -rf dist
cp pyproject.toml pyproject.toml.bak
cp ifcfm/__init__.py __init__.py.bak
$(SED) 's/version = "0.0.0"/version = "$(VERSION)"/' pyproject.toml
$(SED) 's/version = "0.0.0"/version = "$(VERSION)"/' ifcfm/__init__.py
python -m build
mv pyproject.toml.bak pyproject.toml
mv __init__.py.bak ifcfm/__init__.py
+2
View File
@@ -41,6 +41,8 @@ try:
except:
pass # No Pandas support
__version__ = version = "0.0.0"
class Parser:
def __init__(self, preset="basic"):
+32
View File
@@ -0,0 +1,32 @@
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[project]
name = "ifcfm"
version = "0.0.0"
authors = [
{ name="Dion Moult", email="dion@thinkmoult.com" },
]
description = "Extract data from IFC following facility management standards"
readme = "README.md"
keywords = ["IFC", "FM", "BIM"]
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
]
dependencies = [
"ifcopenshell",
"openpyxl",
"odfpy",
"pandas",
]
[project.urls]
Homepage = "http://ifcopenshell.org"
Documentation = "https://docs.ifcopenshell.org"
Issues = "https://github.com/IfcOpenShell/IfcOpenShell/issues"
[tool.setuptools.packages.find]
include = ["ifcfm"]
exclude = ["test*"]
+7
View File
@@ -26,6 +26,13 @@ to spreadsheets and other machine readable formats, such as ODS, XLSX, CSV,
Pandas, XML, and JSON. These formats may then be easily read, audited, or
imported into technologies that cannot work with IFC natively.
PyPI
----
.. code-block::
pip install ifcfm
Supported data standards
------------------------