Filled out developer documentation and added contributing docs.
This commit is contained in:
parent
fca26a4b86
commit
2f7872a6be
3
CODE_OF_CONDUCT.md
Normal file
3
CODE_OF_CONDUCT.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
# Code of Conduct
|
||||
|
||||
It is asked that all contributions to this project be made in a respectful and considerate way. This project has adopted the [Python Community Code of Conduct's](https://www.python.org/psf/codeofconduct/) guidelines.
|
40
CONTRIBUTING.md
Normal file
40
CONTRIBUTING.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
# Introduction
|
||||
|
||||
Thank you for your interest in contributing to the CadQuery Module for FreeCAD. Contributions by the community are welcome and appreciated.
|
||||
|
||||
This guide was created to help get contributors up and running as quickly as possible. Following these guidelines will help ensure that issues get resolved more quickly and efficiently.
|
||||
|
||||
You do not need to be a software developer to have a big impact on this project. Contributions can take many forms including, but not limited to, the following:
|
||||
|
||||
* Writing and improving documentation
|
||||
* Triaging bugs
|
||||
* Submitting bugs and feature requests
|
||||
* Creating tutorial videos and blog posts
|
||||
* Helping other users get started and solve problems
|
||||
* Telling others about this project
|
||||
* Helping with translations and internationalization
|
||||
* Helping with accessibility
|
||||
* Contributing bug fixes and new features
|
||||
|
||||
# Code of Conduct
|
||||
It is asked that all contributions to this project be made in a respectful and considerate way. This project has adopted the [Python Community Code of Conduct's](https://www.python.org/psf/codeofconduct/) guidelines.
|
||||
|
||||
# Technical Guidelines
|
||||
Beyond being good to one another, there are technical guidelines for contributing to this project as well.
|
||||
|
||||
* Create issues and pull requests for any major changes and enhancements that you wish to contribute back to the project. Discuss things transparently and get community feedback.
|
||||
* Be welcoming and encouraging to new contributors. Again, see the [Python Community Code of Conduct](https://www.python.org/psf/codeofconduct/).
|
||||
|
||||
# First Time Contributors
|
||||
There is no need to be nervous about making your first contribution. Everybody is a beginner at some point, and there is no better way to learn than just jumping in. If you are not sure what to do, open an [issue](https://github.com/jmwright/cadquery-freecad-module/issues) so that a community member can help you through it.
|
||||
|
||||
# How to Report a Bug
|
||||
When filing an bug report [issue](https://github.com/jmwright/cadquery-freecad-module/issues), make sure to answer these questions:
|
||||
|
||||
1. What version of the software are you running?
|
||||
2. What operating system are you running the software on?
|
||||
3. What are the steps to reproduce the bug?
|
||||
|
||||
# How to Suggest a Feature or Enhancement
|
||||
|
||||
If you find yourself wishing for a feature that does not exist in this module, you are probably not alone. There are bound to be others out there with similar needs. Open a [issue](https://github.com/jmwright/cadquery-freecad-module/issues) which describes the feature you would like to see, why you need it, and how it should work.
|
|
@ -1,42 +0,0 @@
|
|||
"""
|
||||
Test if the zip file is working.
|
||||
|
||||
Usage:
|
||||
|
||||
- python test_zip_file.py gen
|
||||
- python test_zip_file.py
|
||||
"""
|
||||
import sys
|
||||
import os
|
||||
ZIP = os.path.join(os.getcwd(), 'libs.zip')
|
||||
|
||||
if len(sys.argv) == 2 and sys.argv[1] == 'gen':
|
||||
#--- gen zip file
|
||||
import jedi, pep8, pyqode, pyqode.core, pyqode.python, pyqode.qt, pygments, frosted, pies, builtins, future, pyflakes, docutils, pint
|
||||
from qidle.system import embed_package_into_zip
|
||||
embed_package_into_zip([jedi, pep8, pyqode, pyqode.core, pyqode.python,
|
||||
pyqode.qt, pygments, pyflakes, builtins, future, docutils, pint, pyparsing], ZIP)
|
||||
else:
|
||||
# remove all pyqode path from sys.path (to make sure the package are
|
||||
# imported from the zip archive)
|
||||
for pth in list(sys.path):
|
||||
if 'pyqode' in pth:
|
||||
print('removing %s' % pth)
|
||||
sys.path.remove(pth)
|
||||
|
||||
# importing a pyqode module should fail
|
||||
fail = False
|
||||
try:
|
||||
from pyqode.core.api import code_edit
|
||||
except ImportError:
|
||||
fail = True
|
||||
assert fail is True
|
||||
|
||||
# mount zip file
|
||||
sys.path.insert(0, ZIP)
|
||||
print(sys.path)
|
||||
|
||||
# test it!
|
||||
from pyqode.core.api import code_edit
|
||||
print(code_edit.__file__)
|
||||
assert ZIP in code_edit.__file__
|
|
@ -0,0 +1,54 @@
|
|||
[<Back to Main](index.md)
|
||||
## Developers
|
||||
|
||||
If you would like to contribute to this project, below is some information to help you get started.
|
||||
|
||||
### Table of Contents
|
||||
- [Contribution Guidelines](developers.md#contribution-guidelines)
|
||||
- [Manual Installation](developers.md#manual-installation)
|
||||
- [Embedded Libraries](developers.md#embedded-libraries)
|
||||
- [Updating cqparts](developers.md#updating-cqparts)
|
||||
- [Compiling the Qt Resource File](developers.md#compiling-the-qt-resource-file)
|
||||
- [Future Enhancements](developers.md#future-enhancements)
|
||||
|
||||
### Contribution Guidelines
|
||||
|
||||
Contribution guidelines can be found [here](https://github.com/jmwright/cadquery-freecad-module/blob/master/CONTRIBUTING.md). Please familiarize yourself with them as part of the process of getting involved.
|
||||
|
||||
### Manual Installation
|
||||
Developers may need to run specific versions of this module which are not installed by FreeCAD's addons manager. There is a section in the installation documentation on [manual installation](installation.md#manual). This can be used to run any version or branch of the module that is needed.
|
||||
|
||||
### Embedded Libraries
|
||||
All of the libraries that this module depends on reside in the `Libs` directory. Updated library versions should be downloaded manually, extracted, and placed in this directory. Libraries related to cqparts are updated through a script, and will be overwritten if updated manually.
|
||||
|
||||
### Updating cqparts
|
||||
In the `Tools` directory of the repository is a utility named `update_dependencies.sh`. Any time that a new version of cqparts is released, that script should be run from within the `Tools` directory.
|
||||
```
|
||||
cd Tools
|
||||
./update_dependencies.sh
|
||||
```
|
||||
This script will update some of the libraries in the `Libs` directory, as well as any relevant cqparts packages in the `ThirdParty` directory.
|
||||
|
||||
### Compiling the Qt Resource File
|
||||
This is done to update the CadQuery logo.
|
||||
1. Install the PySide development tools: `sudo apt-get install pyside-tools`
|
||||
2. `cd` into the root directory of this module/workbench.
|
||||
3. Run the following command: `pyside-rcc ./CQGui/Resources/CadQuery.qrc -o CadQuery_rc.py`
|
||||
|
||||
### Future Enhancements
|
||||
Below are some future enhancements that contributors are welcome to take on.
|
||||
|
||||
#### Configuration File Settings
|
||||
* Select a light or dark theme
|
||||
* Set default directory for open/save dialogs
|
||||
* ParametricParts.com user name
|
||||
* Enable/disable experimental code. This would allow us to experiment with more difficult and far reaching features without affecting the non-power users, like adding CQ code to the editor by clicking a button in the GUI.
|
||||
* Automatic save on execute
|
||||
* User defined paths to the FreeCAD library. Matching feature request is [here](https://github.com/jmwright/cadquery-freecad-module/issues/48).
|
||||
|
||||
#### UI Features
|
||||
|
||||
* From [issue 28](https://github.com/jmwright/cadquery-freecad-module/issues/28) - Add a way to highlight the objects matched by a selector.
|
||||
* From [issue 28](https://github.com/jmwright/cadquery-freecad-module/issues/28) - Add a way to visualize the negative space in a cut (something like openscad's debug operator).
|
||||
* From [issue 28](https://github.com/jmwright/cadquery-freecad-module/issues/28) - Some limited mouse interaction; use to generate a direction selector based on the current view, for example.
|
||||
* From [issue 19](https://github.com/jmwright/cadquery-freecad-module/issues/19) - Add interactive parameters like there are on ParametricParts.com.
|
|
@ -1,6 +1,7 @@
|
|||
## CadQuery Module for FreeCAD
|
||||
|
||||
### Table of Contents
|
||||
### Documentation
|
||||
- [Introduction](index.md#introduction)
|
||||
- [Installation](installation.md)
|
||||
- [Usage](usage.md)
|
||||
- [Developers](developers.md)
|
||||
|
|
Loading…
Reference in New Issue
Block a user