https://github.com/conda/constructor

tool for creating installers from conda packages

https://github.com/conda/constructor

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    8 of 72 committers (11.1%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.1%) to scientific vocabulary

Keywords from Contributors

conda docs package-management closember tensors numerical-methods notebooks qt wx tk
Last synced: 10 months ago · JSON representation

Repository

tool for creating installers from conda packages

Basic Info
Statistics
  • Stars: 490
  • Watchers: 31
  • Forks: 170
  • Open Issues: 43
  • Releases: 30
Created over 10 years ago · Last pushed 10 months ago
Metadata Files
Readme Changelog License Code of conduct Codeowners Authors

README.md

(conda) Constructor

Constructor is a tool which allows constructing an installer for a collection of conda packages.

It solves needed packages using user-provided specifications, and bundles those packages. It can currently create 3 kinds of installers, which are best thought of as delivery vehicles for the bundled packages. There are shell .sh installers, macOS .pkg installers, and Windows .exe installers.

Each of these will create an environment on the end user's system that contains the specs you provided, along with any necessary dependencies. These installers are similar to the Anaconda and Miniconda installers, and indeed constructor is used to create those installers.

Installation

constructor can be installed into any environment using:

$ conda install constructor

Once installed, the constructor command will be available:

$ constructor -h

Usage

The constructor command takes an installer specification directory as its argument. This directory needs to contain a file construct.yaml, which specifies the name of the installer, the conda channels to pull packages from, the conda packages included in the installer, etc. The complete list of keys in this file can be found in CONSTRUCT.md. Also, the directory may contain some additional optional files (such as a license file, and image files for the Windows installer). Examples for various installations are located in the examples directory.

More details can be found in the documentation.

Development

To build or update CONSTRUCT.md at the root of the repo you'll need to install the jinja2 package (conda install jinja2) and then run make doc, or invoke the the script directly with python scripts/make_docs.py.

Build status

| Build status Docs status codecov pre-commit.ci status | Anaconda-Server Badge | | --- | :-: | | conda install defaults::constructor | Anaconda-Server Badge | | conda install conda-forge::constructor | Anaconda-Server Badge | | conda install conda-canary/label/dev::constructor | Anaconda-Server Badge |

Owner

  • Name: conda
  • Login: conda
  • Kind: organization

conda is system-level, binary package and environment manager running on all major operating systems and platforms.

GitHub Events

Total
  • Create event: 58
  • Release event: 8
  • Issues event: 68
  • Watch event: 30
  • Delete event: 43
  • Issue comment event: 188
  • Push event: 101
  • Pull request review comment event: 130
  • Pull request review event: 222
  • Pull request event: 194
  • Fork event: 4
Last Year
  • Create event: 58
  • Release event: 8
  • Issues event: 68
  • Watch event: 30
  • Delete event: 43
  • Issue comment event: 188
  • Push event: 101
  • Pull request review comment event: 130
  • Pull request review event: 222
  • Pull request event: 194
  • Fork event: 4

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 1,169
  • Total Committers: 72
  • Avg Commits per committer: 16.236
  • Development Distribution Score (DDS): 0.7
Past Year
  • Commits: 138
  • Committers: 7
  • Avg Commits per committer: 19.714
  • Development Distribution Score (DDS): 0.725
Top Committers
Name Email Commits
Ilan Schnell i****l@g****m 351
Nehal J Wani n****1@g****m 119
Jaime Rodríguez-Guerra j****p 102
Mike Sarahan m****n@g****m 66
Michael C. Grant m****t@a****m 60
pre-commit-ci[bot] 6****] 44
conda-bot 1****t 42
dependabot[bot] 4****] 42
Marco Esters m****s@a****m 41
Ray Donnelly m****d@g****m 41
Eric Prestat e****t@g****m 26
Isuru Fernando i****f@g****m 23
Daniel Bast 2****t 20
Marcel Bargull m****l@u****u 16
Kale Franz k****z@c****o 12
Mark Harfouche m****e@g****m 12
Sophia Castellarin s****n@a****m 11
conda-bot a****t@a****m 10
Faustin Carter f****r@g****m 10
Chris Burr c****r@c****h 10
Forrest Waters f****5@g****m 9
Jonathan J. Helmus j****s@g****m 9
Angela Gloyna a****a@g****m 8
Anthony Scopatz s****z@g****m 7
Martin Durant m****t@u****a 5
Aaron Stevens b****2@g****m 4
Eric Dill t****e@g****m 4
Jannis Leidel j****s@l****o 4
Thomas Holder t****r@s****m 4
Julien Jerphanion g****t@j****z 3
and 42 more...

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 172
  • Total pull requests: 421
  • Average time to close issues: 11 months
  • Average time to close pull requests: 26 days
  • Total issue authors: 79
  • Total pull request authors: 35
  • Average comments per issue: 2.77
  • Average comments per pull request: 1.09
  • Merged pull requests: 345
  • Bot issues: 1
  • Bot pull requests: 130
Past Year
  • Issues: 45
  • Pull requests: 205
  • Average time to close issues: 13 days
  • Average time to close pull requests: 4 days
  • Issue authors: 22
  • Pull request authors: 13
  • Average comments per issue: 1.27
  • Average comments per pull request: 0.65
  • Merged pull requests: 162
  • Bot issues: 0
  • Bot pull requests: 97
Top Authors
Issue Authors
  • jaimergp (30)
  • conda-bot (14)
  • marcoesters (12)
  • hmaarrfk (7)
  • dbast (5)
  • kalefranz (5)
  • mcg1969 (4)
  • briantoby (4)
  • bkreider (4)
  • moorepants (3)
  • xmnlab (3)
  • mhsmith (3)
  • larsoner (3)
  • danyeaw (3)
  • mrclary (2)
Pull Request Authors
  • jaimergp (95)
  • marcoesters (73)
  • dependabot[bot] (67)
  • pre-commit-ci[bot] (63)
  • conda-bot (58)
  • dbast (13)
  • chrisburr (7)
  • jjerphan (6)
  • huche6 (3)
  • mcg1969 (3)
  • hmaarrfk (3)
  • isuruf (2)
  • millsks (2)
  • NixM0nk3y (2)
  • Jrice1317 (2)
Top Labels
Issue Labels
type::bug (70) type::feature (54) locked (45) stale (37) stale::closed (36) type::testing (18) source::community (8) os::windows (7) type::documentation (6) type::tech-debt (5) stale::recovered (4) os::macos (3) in-progress (3) source::anaconda (3) help-wanted (3) pending::feedback (3) epic (2) severity::4 (1) source::partner (1) cla-signed (1) dependencies (1) good first issue (1) pending::support (1) type::support (1) mitigated (1) sync::anaconda (1) backlog (1) type::task (1)
Pull Request Labels
cla-signed (366) locked (82) dependencies (67) github_actions (19) stale (6) stale::closed (6) type::bug (1) os::windows (1) in-progress (1) documentation::how-tos (1)

Packages

  • Total packages: 3
  • Total downloads: unknown
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 16
    (may contain duplicates)
  • Total versions: 54
conda-forge.org: constructor

Constructor is a tool for constructing an installer for a collection of conda packages. It creates an Anaconda-like installer consisting of packages.

  • Versions: 21
  • Dependent Packages: 0
  • Dependent Repositories: 8
Rankings
Dependent repos count: 12.2%
Forks count: 14.4%
Stargazers count: 19.7%
Average: 24.5%
Dependent packages count: 51.6%
Last synced: 10 months ago
anaconda.org: constructor

Constructor is a tool for constructing an installer for a collection of conda packages. It creates an Anaconda-like installer consisting of packages.

  • Versions: 32
  • Dependent Packages: 0
  • Dependent Repositories: 8
Rankings
Forks count: 25.6%
Stargazers count: 33.2%
Average: 37.4%
Dependent repos count: 39.6%
Dependent packages count: 51.2%
Last synced: 10 months ago
anaconda.org: anaconda-distribution-installer

Constructor is a tool for constructing an installer for a collection of conda packages. It creates an Anaconda-like installer consisting of packages.

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Forks count: 24.6%
Stargazers count: 30.7%
Average: 38.2%
Dependent packages count: 39.8%
Dependent repos count: 57.7%
Last synced: 10 months ago

Dependencies

setup.py pypi
  • conda *
  • non-python *
  • pillow *
  • ruamel_yaml *
.github/workflows/cla.yml actions
  • conda/actions/check-cla v22.9.0 composite
.github/workflows/docs.yml actions
  • actions/checkout v3 composite
  • actions/deploy-pages v1 composite
  • actions/upload-pages-artifact v1 composite
  • conda-incubator/setup-miniconda v2 composite
.github/workflows/issues.yml actions
  • actions-ecosystem/action-add-labels v1.1.0 composite
  • actions-ecosystem/action-remove-labels v1.3.0 composite
.github/workflows/labels.yml actions
  • EndBug/label-sync v2.3.0 composite
  • actions/checkout v3 composite
  • andstor/file-existence-action v1.0.1 composite
.github/workflows/lock.yml actions
  • dessant/lock-threads v2 composite
.github/workflows/main.yml actions
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/upload-artifact v3 composite
  • codecov/codecov-action v3 composite
.github/workflows/project.yml actions
  • actions/add-to-project v0.3.0 composite
.github/workflows/stale.yml actions
  • actions/stale v4 composite
  • conda/actions/read-yaml v22.9.0 composite
dev/extra-requirements-windows.txt pypi
  • conda-forge * development
pyproject.toml pypi
tests/requirements.txt pypi
  • coverage * test
  • jinja2 * test
  • pytest * test
  • pytest-cov * test
dev/environment.yml conda
  • conda >=4.6
  • conda-standalone
  • pillow >=3.1
  • python
  • ruamel.yaml >=0.11.14,<0.18
docs/environment.yml conda
  • alabaster 0.7.12.*
  • babel 2.11.0.*
  • beautifulsoup4 4.11.1.*
  • brotlipy 0.7.0.*
  • bzip2 1.0.8.*
  • ca-certificates 2022.12.7.*
  • certifi 2022.12.7.*
  • cffi 1.15.1.*
  • charset-normalizer 2.1.1.*
  • colorama 0.4.6.*
  • cryptography 38.0.3.*
  • docutils 0.19.*
  • idna 3.4.*
  • imagesize 1.4.1.*
  • importlib-metadata 5.1.0.*
  • jinja2 3.1.2.*
  • libffi 3.4.2.*
  • libsqlite 3.40.0.*
  • libzlib 1.2.13.*
  • linkify-it-py 2.0.0.*
  • markdown-it-py 2.1.0.*
  • markupsafe 2.1.1.*
  • mdit-py-plugins 0.3.1.*
  • mdurl 0.1.0.*
  • myst-parser 0.18.1.*
  • ncurses 6.3.*
  • openssl 3.0.7.*
  • packaging 21.3.*
  • pip 22.3.1.*
  • pycparser 2.21.*
  • pydata-sphinx-theme 0.12.0.*
  • pygments 2.13.0.*
  • pyopenssl 22.1.0.*
  • pyparsing 3.0.9.*
  • pysocks 1.7.1.*
  • python 3.11.0.*
  • python_abi 3.11.*
  • pytz 2022.6.*
  • pyyaml 6.0.*
  • readline 8.1.2.*
  • requests 2.28.1.*
  • setuptools 65.5.1.*
  • six 1.16.0.*
  • snowballstemmer 2.2.0.*
  • soupsieve 2.3.2.post1.*
  • sphinx 5.3.0.*
  • sphinx-copybutton 0.5.0.*
  • sphinx-design 0.3.0.*
  • sphinx-sitemap 2.2.1.*
  • sphinxcontrib-applehelp 1.0.2.*
  • sphinxcontrib-devhelp 1.0.2.*
  • sphinxcontrib-htmlhelp 2.0.0.*
  • sphinxcontrib-jsmath 1.0.1.*
  • sphinxcontrib-mermaid 0.7.1.*
  • sphinxcontrib-qthelp 1.0.3.*
  • sphinxcontrib-serializinghtml 1.1.5.*
  • tk 8.6.12.*
  • typing-extensions 4.4.0.*
  • typing_extensions 4.4.0.*
  • tzdata 2022f.*
  • uc-micro-py 1.0.1.*
  • urllib3 1.26.13.*
  • wheel 0.38.4.*
  • xz 5.2.6.*
  • yaml 0.2.5.*
  • zipp 3.10.0.*