Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
cfc8991
Update README.md
OllisGit Sep 12, 2020
c384326
Initial release 1.6.0
OllisGit Sep 12, 2020
d53d796
New Version 1.6.1
OllisGit Oct 7, 2020
b0dc5ce
update create issue link
OllisGit Oct 7, 2020
b8fa048
update wiki and community link
OllisGit Oct 7, 2020
5c754fc
New Version 1.6.2
OllisGit Oct 8, 2020
3c76d95
New Version 1.6.3
OllisGit Oct 12, 2020
d294ce2
Send plugin notification when user selects new spool from UI
gdombiak Oct 24, 2020
690cb2e
Update methods
Dec 5, 2020
25dcc4b
Change keyword name from `update` to `updateui`
Jan 12, 2021
bc055d0
Fix typo in README
dannywillems Jan 24, 2021
631162b
Merge pull request #36 from dannywillems/typo
OllisGit Jan 28, 2021
cc108c3
Merge pull request #15 from gdombiak/feature_spool_change_notification
OllisGit Jan 28, 2021
a616ffd
- improve logging and exception handling
OllisGit Jan 28, 2021
de05cb9
Merge remote-tracking branch 'origin/master'
OllisGit Jan 28, 2021
07d1e67
- mr #15 commented
OllisGit Jan 28, 2021
ac7fa66
Merge branch 'api_update_ui'
OllisGit Jan 28, 2021
2c56c03
New Verison 1.7.0
OllisGit Jan 28, 2021
46b8561
New Verison 1.7.0
OllisGit Jan 28, 2021
5237c4d
New Verison 1.7.1
OllisGit Jan 29, 2021
c7d8410
New Verison 1.7.2
OllisGit Jan 31, 2021
e6d428c
Added short API description
OllisGit Apr 19, 2021
3116907
New Verison 1.8.0
OllisGit May 24, 2021
42a3f69
New Verison 1.8.0
OllisGit May 24, 2021
4e271a3
Fix extruder calculation with G2/G3 (#67)
ldursw Jun 4, 2021
ab5311b
New Verison 1.8.1
OllisGit Jun 5, 2021
a976290
Show errors when database connection test fails (#77)
techfreek Oct 16, 2021
5f8c903
New Verison 1.9.0
OllisGit Oct 17, 2021
cae60d5
Bugfix/spanish translation fix (#82)
Deses Nov 15, 2021
39ca512
New Verison 1.9.1
OllisGit Nov 15, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/PULL_REQUEST_TEMPLATE.md

This file was deleted.

86 changes: 86 additions & 0 deletions .github/settings.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
repository:
# See https://developer.github.com/v3/repos/#edit for all available settings.

# The name of the repository. Changing this will rename the repository
# name: repo-name

# A short description of the repository that will show up on GitHub
# description: description of repo

# A URL with more information about the repository
# homepage: https://example.github.io/

# Either `true` to make the repository private, or `false` to make it public.
# private: false

# Either `true` to enable issues for this repository, `false` to disable them.
has_issues: true

# Either `true` to enable the wiki for this repository, `false` to disable it.
has_wiki: true

# Either `true` to enable downloads for this repository, `false` to disable them.
# has_downloads: true

# Updates the default branch for this repository.
# default_branch: master

# Either `true` to allow squash-merging pull requests, or `false` to prevent
# squash-merging.
# allow_squash_merge: true

# Either `true` to allow merging pull requests with a merge commit, or `false`
# to prevent merging pull requests with merge commits.
# allow_merge_commit: true

# Either `true` to allow rebase-merging pull requests, or `false` to prevent
# rebase-merging.
# allow_rebase_merge: true

# Labels: define labels for Issues and Pull Requests
labels:
- name: "type: bug"
description: "Something isn't working"
color: d73a4a
- name: "type: enhancement"
description: "New feature or request"
color: a2eeef
- name: "type: question"
description: "Further information is requested"
color: d876e3
- name: "status: analysing"
color: d3d847
- name: "status: inProgress"
description: "I am working on it"
color: 5319e7
- name: "status: inNextRelease"
description: "Will be implemented/fixed in next release"
color: 4ae857
- name: "status: waitingForFeedback"
description: "Wating for Customers feedback"
color: bfdadc
- name: "status: waitingForTestFeedback"
color: 006b75
- name: "status: wontfix"
description: "I don't wont to fix this"
color: fbca04
- name: "status: markedForAutoClose"
description: "Issue will be closed automatically"
color: ed6d75


# Collaborators: give specific users access to this repository.
#collaborators:
# - username: bkeepers
# Note: Only valid on organization-owned repositories.
# The permission to grant the collaborator. Can be one of:
# * `pull` - can pull, but not push to or administer this repository.
# * `push` - can pull and push, but not administer this repository.
# * `admin` - can pull, push and administer this repository.
# permission: push

# - username: hubot
# permission: pull

# - username:
# permission: pull
18 changes: 18 additions & 0 deletions .github/stale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 30
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 10
# Issues with these labels will never be considered stale
exemptLabels:
- "status: analysing"
- "status: inNextRelease"
- "status: inProgress"
- "status: wontfix"
# Label to use when marking an issue as stale
staleLabel: "status: markedForAutoClose"
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked for closing, because it has not had
activity in 30 days. It will be closed if no further activity occurs in 10 days.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false
78 changes: 78 additions & 0 deletions .github/workflows/github-release-actions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
###
### Simple script to build a zip file of the whole repository
###
#
#script:
## debug - echo 'Hello World'
# - export PLUGIN_VERSION=$(cat setup.py | grep 'plugin_version = "*"' | cut -d '"' -f2)
# - zip -r master.zip * -i '\octoprint_*' 'translations' 'README.md' 'requirements.txt' 'setup.py'
## debug - ls -al
#
### see "Fix travis automatic build and deploy"
### https://github.com/oliexdev/openScale/pull/121
### https://github.com/oliexdev/openScale/pull/121/files
#before_deploy:
# - git tag -f travis-build
# - git remote add gh https://${TRAVIS_REPO_SLUG%/*}:${GITHUB_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git
# - git push -f gh travis-build
# - git remote remove gh
#
#deploy:
# name: "V${PLUGIN_VERSION}-draft"
# #prerelease: true
# draft: true
# provider: releases
# api_key: "${GITHUB_TOKEN}"
# file: "master.zip"
# overwrite: true
# skip_cleanup: true
# target_commitish: $TRAVIS_COMMIT



name: Build Plugin Release - Action
on: [push]
jobs:
Build-Release-ZIP-Action:
runs-on: ubuntu-latest
steps:
- name: Check out repository code
uses: actions/checkout@v2

- run: echo "Read current plugin version..."
- run: export PLUGIN_VERSION=$(cat setup.py | grep 'plugin_version = "*"' | cut -d '"' -f2)
- run: echo "Plugin Version $PLUGIN_VERSION ${PLUGIN_VERSION}"

- run: echo "Build ZIP"
- run: zip -r master.zip * -i '\octoprint_*' 'translations' 'README.md' 'requirements.txt' 'setup.py'
- name: List files in the repository
run: |
ls ${{ github.workspace }}

- name: version
run: echo "::set-output name=version::$(cat setup.py | grep 'plugin_version = "*"' | cut -d '"' -f2)"
id: version

- name: release
uses: actions/create-release@v1
id: create_release
env:
GITHUB_TOKEN: ${{ github.token }}
with:
draft: true
prerelease: false
release_name: V${{ steps.version.outputs.version }}-draft
tag_name: ${{ steps.version.outputs.version }}-draft
body_path: RELEASE_TEMPLATE.md

- name: upload master.zip to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: master.zip
asset_name: master.zip
asset_content_type: application/gzip

- run: echo "🍏 This job's status is ${{ job.status }}."
29 changes: 29 additions & 0 deletions .travis.yml.notusedanymore
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
##
## Simple script to build a zip file of the whole repository
##

script:
# debug - echo 'Hello World'
- export PLUGIN_VERSION=$(cat setup.py | grep 'plugin_version = "*"' | cut -d '"' -f2)
- zip -r master.zip * -i '\octoprint_*' 'translations' 'README.md' 'requirements.txt' 'setup.py'
# debug - ls -al

## see "Fix travis automatic build and deploy"
## https://github.com/oliexdev/openScale/pull/121
## https://github.com/oliexdev/openScale/pull/121/files
before_deploy:
- git tag -f travis-build
- git remote add gh https://${TRAVIS_REPO_SLUG%/*}:${GITHUB_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git
- git push -f gh travis-build
- git remote remove gh

deploy:
name: "V${PLUGIN_VERSION}-draft"
#prerelease: true
draft: true
provider: releases
api_key: "${GITHUB_TOKEN}"
file: "master.zip"
overwrite: true
skip_cleanup: true
target_commitish: $TRAVIS_COMMIT
68 changes: 65 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,39 @@
# OctoPrint-FilamentManager

## UNDER NEW MANAGEMENT

Hi everybody,
because there was no activtiy in the last month on the origial GitHub-Repository from @malnvenshorn,
the community decided to find a new home of this OctoPrint-Plugin and here it is ;-)
See https://github.com/OctoPrint/plugins.octoprint.org/issues/471 for more details

What is my roadmap/stratagy of "hosting" this plugin?
- First: Plugin should run under the latest versions of python and OctoPrint
- Analysing/fixing issues that prevent using the plugin
- An open mind for new ideas....
- ...but if the effort to implement new features is to height, then it will probably be implemented in my SpoolManager-Plugin
(https://github.com/OllisGit/OctoPrint-SpoolManager)
- ...also I will move more and more features from FilamentManager to SpoolManager (e.g. external Database, MultiTool, ...)

# Overview

[![Version](https://img.shields.io/badge/dynamic/json.svg?color=brightgreen&label=version&url=https://api.github.com/repos/OllisGit/OctoPrint-FilamentManager/releases&query=$[0].name)]()
[![Released](https://img.shields.io/badge/dynamic/json.svg?color=brightgreen&label=released&url=https://api.github.com/repos/OllisGit/OctoPrint-FilamentManager/releases&query=$[0].published_at)]()
![GitHub Releases (by Release)](https://img.shields.io/github/downloads/OllisGit/OctoPrint-FilamentManager/latest/total.svg)

This OctoPrint plugin makes it easy to manage your inventory of filament spools. You can add all your spools and assign them to print jobs. The Filament Manager will automatically track the amount of extruded filament so you can always see how much is left on your spools.

If you have questions or encounter issues please take a look at the [Frequently Asked Questions](https://github.com/malnvenshorn/OctoPrint-FilamentManager/wiki#faq) first. There might be already an answer. In case you haven't found what you are looking for, feel free to open a [ticket](https://github.com/malnvenshorn/OctoPrint-FilamentManager/issues/new) and I'll try to help. Since OctoPrint provides an own [community forum](https://discourse.octoprint.org/) questions and requests for help should be placed there.
If you have questions or encounter issues please take a look at the [Frequently Asked Questions](https://github.com/OllisGit/OctoPrint-FilamentManager/wiki#faq) first. There might be already an answer.
In case you haven't found what you are looking for, feel free to open a [ticket](https://github.com/OllisGit/OctoPrint-FilamentManager/issues/new/choose) and I'll try to help.
Or ask questions and requests for help in the community forum [community forum](https://community.octoprint.org/).

#### Support my Efforts

This plugin, as well as my [other plugins](https://github.com/OllisGit/) were developed in my spare time.
If you like it, I would be thankful about a cup of coffee :)

[![More coffee, more code](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=6SW5R6ZUKLB5E&source=url)


## Features

Expand All @@ -18,12 +49,24 @@ If you have questions or encounter issues please take a look at the [Frequently
1. Install this plugin via the bundled [Plugin Manager](https://github.com/foosel/OctoPrint/wiki/Plugin:-Plugin-Manager)
or manually using this URL:

`https://github.com/malnvenshorn/OctoPrint-FilamentManager/archive/master.zip`
`https://github.com/OllisGit/OctoPrint-FilamentManager/releases/latest/download/master.zip`

1. For PostgreSQL support you need to install an additional dependency:
1. For PostgreSQL support you need to install an additional dependency. Take a look into the [wiki](https://github.com/OllisGit/OctoPrint-FilamentManager/wiki) for more details.

`pip install psycopg2`


### Using PostgreSQL with Docker
You need to make sure that you setup a docker runtime on your system. After that you can "manage" a PostgreSQL with the following commands:

docker-compose up
_

docker-compose down --volumes
_

docker-compose run postgres bash

## Screenshots

![FilamentManager Sidebar](screenshots/filamentmanager_sidebar.png?raw=true)
Expand All @@ -33,3 +76,22 @@ or manually using this URL:
![FilamentManager Settings Spool](screenshots/filamentmanager_settings_spool.png?raw=true)

![FilamentManager Settings](screenshots/filamentmanager_settings.png?raw=true)

# Developer section

## API - Calls

E.g.
```
url = 'http://localhost/plugin/filamentmanager/selections/0'
headers = {'X-Api-Key': config.API_KEY}
payload = {
"selection": {
"tool": 0,
"spool": {
"id": id
}
},
"updateui": True
}
```
15 changes: 15 additions & 0 deletions RELEASE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
## [BugFix]
- #xxx

## [Enhancement]
- #xxx

## Counter
![downloaded](https://img.shields.io/github/downloads/OllisGit/OctoPrint-FilamentManager/xxx/total)

## Support my Efforts

This plugin, as well as my [other plugins](https://github.com/OllisGit/) were developed in my spare time.
If you like it, I would be thankful about a cup of coffee :)

[![More coffee, more code](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=6SW5R6ZUKLB5E&source=url)
5 changes: 5 additions & 0 deletions TODOs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
What are the next steps?
========================

- handling release channel
- issue 23: update to SQLAlchemy 1.3.23 (precondition: release-channel)
17 changes: 17 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
version: '3'
services:
postgres:
image: "postgres" # use latest official postgres version
# env_file:
# - database.env # configure postgres
volumes:
- postgres-data:/var/lib/postgresql/data/ # persist data even if container shuts down
ports:
- 5432:5432
environment:
- POSTGRES_DB=spoolmanagerdb
- POSTGRES_USER=Olli
- POSTGRES_PASSWORD=illO

volumes:
postgres-data: # named volumes can be managed easier using docker-compose
Loading