jhpyle / docassemble Goto Github PK
View Code? Open in Web Editor NEWA free, open-source expert system for guided interviews and document assembly, based on Python, YAML, and Markdown.
Home Page: https://docassemble.org
License: MIT License
A free, open-source expert system for guided interviews and document assembly, based on Python, YAML, and Markdown.
Home Page: https://docassemble.org
License: MIT License
The "Done" button on a signature block is styled differently from all other buttons. Its located in a different place and looks very different. If its easy to do, it'd be nice to have it styled and placed like other buttons.
It would be great if it were possible to add multiple users to Docassemble without requiring email setup.
Is this intended?
http://docassemble.org/docs/documents.html#tocAnchor-1-1-6
The code and example don't seem to show limiting anything.
Authors who are used to GUI interfaces are not used to typing in code. Modify the playground section to include buttons that insert a template for each type of question or code block, and provide links to the documention.
I have sending of the referrer disabled for privacy reasons and i can imagine many people do so, too.
In this case answering a question on https://demo.docassemble.org/ returns a "Bad Request".
I think it would be an improvement to either:
In both chrome and safari, the screen becomes unzoomable and unscrillable even though the document download links are off screen.
I will attach an image when I'm back to a real computer.
I'm not sure what's causing this beyond the subject line. The logs don't seem real informative as to what's going on and which things are trying to be concatenated into what. I'm on a docker image current as of 4/28/17. Here's the log:
Error
TypeError: cannot concatenate 'str' and 'NoneType' objects
Log
Traceback (most recent call last):
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask/app.py", line 1612, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask/app.py", line 1598, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/webapp/server.py", line 3125, in index
interview.assemble(user_dict, interview_status)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/parse.py", line 2370, in assemble
interview_status.populate(question.ask(user_dict, 'None', 'None'))
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/parse.py", line 1876, in ask
attachment_text = self.processed_attachments(user_dict, the_x=the_x, the_i=the_i)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/parse.py", line 1908, in processed_attachments
result_list.append(self.finalize_attachment(item[0], item[1], user_dict))
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/parse.py", line 2025, in finalize_attachment
result['content'][doc_format] = docassemble.base.filter.markdown_to_html(result['markdown'][doc_format], use_pandoc=True, question=self)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/filter.py", line 946, in markdown_to_html
a = html_filter(unicode(a), status=status, question=question, embedder=embedder)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/filter.py", line 437, in html_filter
text = re.sub(r'\[FILE ([^,\]]+)\]', lambda x: image_url_string(x, question=question), text)
File "/usr/share/docassemble/local/lib/python2.7/re.py", line 155, in sub
return _compile(pattern, flags).sub(repl, string, count)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/filter.py", line 437, in <lambda>
text = re.sub(r'\[FILE ([^,\]]+)\]', lambda x: image_url_string(x, question=question), text)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/base/filter.py", line 767, in image_url_string
return('<img class="daicon" style="' + width_string + '" src="' + server.url_finder(file_reference, question=question) + '"/>')
TypeError: cannot concatenate 'str' and 'NoneType' objects
Hi,
Running docassemble on a docker container with persistent volumes (using the command for that from the docassemble website), I'm unable to successfully update packages. Even if I just "create a new package" and then update the package immediately by uploading the zip file I just downloaded, I get an "Install not successful" error.
This is the pip log:
pip log: Running pip install --egg --no-index --quiet --src=/tmp/tmpigMvXZ --log-file=/tmp/tmpyw4zDB --upgrade /usr/share/docassemble/files/000/000/000/00b/file.zip Ignoring indexes: https://pypi.python.org/simple Processing /usr/share/docassemble/files/000/000/000/00b/file.zip Running setup.py (path:/tmp/pip-ZBnZz7-build/setup.py) egg_info for package from file:///usr/share/docassemble/files/000/000/000/00b/file.zip Running command python setup.py egg_info Traceback (most recent call last): File "", line 1, in IOError: [Errno 2] No such file or directory: '/tmp/pip-ZBnZz7-build/setup.py' Cleaning up... Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-ZBnZz7-build/ Exception information: Traceback (most recent call last): File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main status = self.run(options, args) File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/commands/install.py", line 335, in run wb.build(autobuilding=True) File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/wheel.py", line 749, in build self.requirement_set.prepare_files(self.finder) File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_set.py", line 380, in prepare_files ignore_dependencies=self.ignore_dependencies)) File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_set.py", line 634, in _prepare_file abstract_dist.prep_for_dist() File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_set.py", line 129, in prep_for_dist self.req_to_install.run_egg_info() File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_install.py", line 439, in run_egg_info command_desc='python setup.py egg_info') File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/utils/__init__.py", line 707, in call_subprocess % (command_desc, proc.returncode, cwd)) InstallationError: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-ZBnZz7-build/
Occasionally with frequent saving / syncing, Docassemble overwrites the copy stored on Drive with a zero-byte file. Not sure if this is because of race condition with syncing?
http://docassemble.org/docs/fields.html#tocAnchor-1-19-2
You give instruction on how to change the label of the resume block; but, in my attempts to play with it, clicking the resume button does nothing and leaves me stuck on the review page despite one or more yet-to-be-asked mandatory question blocks. Can the docs explain more of what's going on?
Steps to reproduce:
Error
UnboundLocalError: local variable 'vimOpt' referenced before assignment
Log
Traceback (most recent call last):
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask/app.py", line 1612, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask/app.py", line 1598, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask_user/decorators.py", line 29, in decorated_view
return func(*args, **kwargs)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask_user/decorators.py", line 76, in decorated_view
return func(*args, **kwargs)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/webapp/server.py", line 7069, in playground_files
});""" + extra_command + """
UnboundLocalError: local variable 'vimOpt' referenced before assignment
In playing around, I can't seem to get buttons that mix with exit, restart etc., with buttons that set a field.
For example:
---
button:
- Exit: exit
- Restart: restart
---
Works just fine. But if you try and mix it with a field, the exit and restart no longer works because it's been assigned to the field. For example:
field: bvar
button:
- Exit: exit
- Restart: restart
- More: True
---
No longer gives you the exit and restart functionality. Is there a way to mix these?
If I do:
---
buttons
- Exit: exit
- Restart: restart
- Continue: continue
---
I get a blank screen with just a second continue button and that doesn't look very professionl and is what I'm trying to avoid with the Continue button.
I create a simple interview with an "objects.py" module with a very simple method that I call in a template, as follows:
from docassemble.base.core import DAObject
class Plan(DAObject):
def summary(self):
return "# Plan Terms\n\n" + self.name
If I run this (I have interview questions that query for name), I see the results I expect.
Now, I change the module method to include a bogus Plan property, say, "self.instructions", like so:
def summary(self):
return "# Plan Terms\n\n" + self.name + self.instructions
When I save this change, I get a message that the system is restarting. However, when I run the interview again, I get no error. If I restart the server, I get the error. Doesn't look like the restart is actually reloading the changes to the module.
Happy to help with any further info.
BTW, this is an amazing project. Very impressed.
I prefer to edit my text files in an editor like vim; is there a way to upload .yml files to the playground without having to do cut and paste?
It looks like the other upload option are for templates and not for the same .yml files as if you created them directly in the playground? If I'm being dense, please let me know; I couldn't find an answer in the documentation.
Hi,
I try to run this with docker but container exits and in log i have this:
panic: standard_init_linux.go:175: exec user process caused "exec format error" [recovered]
panic: standard_init_linux.go:175: exec user process caused "exec format error"
goroutine 1 [running, locked to thread]:
panic(0x3339c8, 0x107aba40)
/usr/local/go/src/runtime/panic.go:481 +0x330
github.com/urfave/cli.HandleAction.func1(0x107d1958)
/go/src/github.com/opencontainers/runc/Godeps/_workspace/src/github.com/urfave/cli/app.go:478 +0x328
panic(0x3339c8, 0x107aba40)
/usr/local/go/src/runtime/panic.go:443 +0x448
github.com/opencontainers/runc/libcontainer.(*LinuxFactory).StartInitialization.func1(0x107d15e0, 0x1071a248, 0x107d1668)
/go/src/github.com/opencontainers/runc/Godeps/_workspace/src/github.com/opencontainers/runc/libcontainer/factory_linux.go:259 +0x13c
github.com/opencontainers/runc/libcontainer.(*LinuxFactory).StartInitialization(0x10794240, 0xb65c14b8, 0x107aba40)
/go/src/github.com/opencontainers/runc/Godeps/_workspace/src/github.com/opencontainers/runc/libcontainer/factory_linux.go:277 +0x498
main.glob.func8(0x1078e320, 0x0, 0x0)
/go/src/github.com/opencontainers/runc/main_unix.go:26 +0x58
reflect.Value.call(0x2e90f8, 0x3efd4c, 0x13, 0x362250, 0x4, 0x107d1918, 0x1, 0x1, 0x0, 0x0, ...)
/usr/local/go/src/reflect/value.go:435 +0xeb4
reflect.Value.Call(0x2e90f8, 0x3efd4c, 0x13, 0x107d1918, 0x1, 0x1, 0x0, 0x0, 0x0)
/usr/local/go/src/reflect/value.go:303 +0x84
github.com/urfave/cli.HandleAction(0x2e90f8, 0x3efd4c, 0x1078e320, 0x0, 0x0)
/go/src/github.com/opencontainers/runc/Godeps/_workspace/src/github.com/urfave/cli/app.go:487 +0x230
github.com/urfave/cli.Command.Run(0x364678, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3ce288, 0x51, 0x0, ...)
/go/src/github.com/opencontainers/runc/Godeps/_workspace/src/github.com/urfave/cli/command.go:191 +0xcd0
github.com/urfave/cli.(*App).Run(0x10780240, 0x10762050, 0x2, 0x2, 0x0, 0x0)
/go/src/github.com/opencontainers/runc/Godeps/_workspace/src/github.com/urfave/cli/app.go:240 +0x84c
main.main()
/go/src/github.com/opencontainers/runc/main.go:137 +0xbb4
Hi - It would be terrific if an addition login method is added, using python-ldap, specifically private/onPrem Active Directory
I'm not sure what to do about this. I am following the installation guide but I am stuck at the point below:
sudo cp ./docassemble/Docker/docassemble-site.conf /etc/apache2/sites-available/docassemble.conf
You appear to not have docassemble-site.conf in github.
I am stuck on this point in my installation. Thank you for this sharing this. I am looking forward to using this.
The text in the navigation bar should be configurable from the interview, rather than static for the whole server.
It should be fairly easy to build a utility that takes an A2J author XML file and converts it into a docassemble YAML interview.
Since docassemble seems amenable for collecting personally identifiable information, I am just curious if it has had any formal security audits.
There seems to be a problem with Unicode characters in the pop-up text of vocabulary terms. In this short example, when I click over the accent term of the question, the pop-up message shows the Unicode character instead of the "é" characters. The "résumé" word is displayed as " r\u00e9sum\u00e9".
Forcing default language to french doesn't help. I'm using a docassemble docker image built approximately 3 weeks ago.
Otherwize, docassemble is working great. I began using it for diagnostic purpose of electrical equipment.
Below is an example yaml file that reproduce the described behavior.
---
default language: fr
---
terms:
accent: |
Accents such as résumé are used in foreign language.
---
question: |
Do you see correctly the accent over the letter e that should appear as é
in the term pop-up.
yesno: accent
mandatory: true
---
Description of the bug:
The easiest way to see the bug/error is to view the following sample interview, which is included in the Docassemble documentation:
This section of the documentation explains the intended result:
https://docassemble.org/docs/fields.html#object
My theory as to the cause:
I think the change made on 2017-11-23 has caused the deviation from the intended functionality described in the documentation. I think setting boolean True or False in multiple choice fields if those are the only options is causing the incompatibility. I can confirm that this feature works as described in the documentation on a version of Docassemble that I installed prior to the change. Note that the error does not come up if the multiple choice drop-down is the only field.
The use of the feature described to avoid the redundant entry of data as it pertains to Docassemble objects is one of its most useful features in my opinion. I will be checking this thread periodically in case anybody needs more information about the bug/error.
Also, thanks to the developer for the fantastic job he has done with this software.
When uploading a UTF-8 encoded .md text file (during Wizard) the application accepts the upload but does not successfully parse the .md file. Logs show an error Error was: 'ascii' codec can't decode byte 0xe2 in position 83: ordinal not in range(128)
Although the wizard appears to proceed, variables are not properly defined and running the interview errors out with a decode error.
This is based on the Dockerhub version current on the date this issue was submitted.
I found where Docassemble stores variable data as a Python dictionary but a json export or API would be nice to export data to an external database such as a practice management system or even just between interviews. This could be a simple json text file.
It would be useful in a lot of circumstances to allow selection from a dropdown menu with the easy possibility to add a new item to the list, such as Windows combobox form element. This isn't supported cross-browser as a standard HTML element but there are extensions to boostrap that handle it, e.g.: https://github.com/danielfarrell/bootstrap-combobox .
This should be an option that can be toggled on or off in the YAML interview file.
Possible #hacktoberfest?
It would be nice to have a list of the items that you should style if you want a custom look for your Docassemble interview. Trying to interest someone at GBLS in documenting this
Ignore .gdoc and .tmp files with Google Drive sync
The answer dictionary will persist if the user registers and logs in, but this could be more apparent from the UI rather than expecting the interview to explain it.
Date math with format_date is a little confusing with the requirement to convert the Docassemble built-in date type and the function name "format_date" doesn't make it clear you can use it for date math. EDIT: I see now that the format_date part is not needed.
format_date(as_datetime(case.answer_date) + date_interval(days=14))
With example 1, you need to change the format of the date in the interview into a datetime. Otherwise you get an error that is confusing for a novice like me:
Error
TypeError: coercing to Unicode: need string or buffer, relativedelta found
I tested it with format_date(today() + date_interval(days=14)) which worked, so today() appears to a return a datetime while Docassemble datatype: date does not.
I suggest adding wrapper functions for add_days, add_months, etc, or alternatively, add_dateinterval that accepts the same arguments as date interval. It should work without requiring the interview author to convert a Docassemble date to a datetime. I think for legal applications, add_days would be most common though? Perhaps also add_years?
E.g.: add_days(case.answer_date, 14) or add_dateinterval(case.answer_date, days=14). It should accept both the Docassemble date datatype and the datatype of the today() function.
Currently you can insert images into pandoc-created documents, but not into PDF files that are form-filled. Use pdftk to allow users to overlay images on top of pages of PDF files.
(~ 10 is enough to trigger)
With 20+, you usually have to extend the wait time on the page multiple times.
In testing and learning the application I've accrued something like 300 pending interviews in the Resume an interview
screen. Is there an easy way to wipe these? Perhaps a button to delete them all? Or is this something already taken care of by one of the cron jobs and I'm worrying over nothing?
I'm getting this error using the upload feature in playground:
Error
AttributeError: 'list' object has no attribute 'from_source'
Log
Traceback (most recent call last):
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask/app.py", line 1612, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask/app.py", line 1598, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask_user/decorators.py", line 29, in decorated_view
return func(*args, **kwargs)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/flask_user/decorators.py", line 76, in decorated_view
return func(*args, **kwargs)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/webapp/server.py", line 7414, in playground_page
variables_html, vocab_list = get_vars_in_use(interview, interview_status, debug_mode=debug_mode)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/docassemble/webapp/server.py", line 1593, in get_vars_in_use
field_origins[val].add(interview.questions[val][lang].from_source)
AttributeError: 'list' object has no attribute 'from_source'
Perhaps an MD5 hash could be applied to the base64 encoding of the serialized user dictionary.
While prototyping and developing interviews in the playground, it would be very useful to have a feature that lets you skip any "required" questions. This would allow for faster next/next/next until you got to the question you updated or changed. The option to test a single question would also be handy.
sudo cp ./docassemble/Docker/docassemble-supervisor.conf /etc/supervisor/conf.d/docassemble.conf
sudo cp ./docassemble/Docker/ssl/* /usr/share/docassemble/certs/
sudo cp ./docassemble/Docker/rabbitmq.config /etc/rabbitmq/
Thanks for your work on docassemble. I hope to integrate this into my practice in the future.
I'm struggling on getting docassemble to email me a PDF after an interview is completed. I.e., trying to get it to do initial intake screening for conflict checks before sending the potential client a more in-depth interview that is practice-area specific.
Can you give some insight on how to correctly use the send_email() function? I'm scratching my head over how to use it.
Should most likely take the form of an enhancement to the "Dispatch" directive that already exists:
https://docassemble.org/docs/config.html#dispatch
Improvements could add graphical configuration option or additional menu choices to make it sensible to have this option always turned on. Documentation could be expanded to make the feature more visible.
It should be possible to make the index the default home page for the server hosting Docassemble.
URL redirects show an error about len(self.condition)
and the condition attribute not being defined.
It would be interesting to extend the SMS-interview style support to different chat platforms. They could include Amazon Alexa, but also Facebook Messenger, Jabber, Slack, etc. Many of these platforms have APIs exposed for integration.
A feature improvement could be to make it easier to add this support in future by generalizing the Twilio integration code to speed up plugin development, even if such other chat platform support doesn't become a core feature of docassemble.
Configuration options would be needed to add API keys.
A new metadata type could be added to Interviews that allows indexing them using the LSNTAP's NSMI classifications. See: https://lsntap.org/LSXML_NSMI
This should be displayed in a friendly form on the index of interviews for the site.
This would be helpful on Docassemble sites that store many interviews. It would also allow for easier sharing of interviews across programs. NSMI is used by LawHelpInteractive where many interviews are already hosted.
It would be nice to be able to add data to the interview title such as a client name, or project.
So when viewing history of interviews, they are not all the same name.
My use case may be a little different than legal, I want to use this to generate Statements of Work for contractual labor, so each interview per User would result in a unique client and project name - and they may want to look up a previous interview.
And/or tags would be a great addition here for a similar result.
The Google "Place" API allows you to start typing an address and have it automatically fill in the address fields in the form using the location services in your browser. This would increase responsiveness of the interview and make it faster to use.
For the feature, see: https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform
A configuration option should be added to allow you to specify the Google API key. The question type can be completely new, or an option when using an object that implements the Address class.
A possible alternative is using the Open Street Map's implementation of a similar API: http://photon.komoot.de/ or https://help.openstreetmap.org/questions/31809/auto-complete-address-using-web-service. Looks like Google version would be more reliable as the OSM version is host-yourself or use a third-party.
I'm trying to install a package that I'm authoring offline. I've had it running before using an older docker image. I just refreshed the image today and am now receiving the following errors when I try to upload and install a new package (from a clean docker image [volumes and containers all removed]):
pip log:
pip install --quiet --prefix=/usr/share/docassemble/local --src=/tmp/tmpzP1mf8 --log-file=/tmp/tmp3Zd3m1 --upgrade /usr/share/docassemble/files/000/000/000/004/file.zip
The directory '/root/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/root/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/root/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/root/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Processing /usr/share/docassemble/files/000/000/000/004/file.zip
Running setup.py (path:/tmp/pip-YFUcus-build/setup.py) egg_info for package from file:///usr/share/docassemble/files/000/000/000/004/file.zip
Running command python setup.py egg_info
Traceback (most recent call last):
File "", line 1, in
File "/tmp/pip-YFUcus-build/setup.py", line 58, in
package_data=find_package_data(where='docassemble/equityAssist/', package='docassemble.equityAssist'),
File "/tmp/pip-YFUcus-build/setup.py", line 16, in find_package_data
for name in os.listdir(where):
OSError: [Errno 2] No such file or directory: 'docassemble/equityAssist/'
Cleaning up...
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-YFUcus-build/
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-YFUcus-build/
Exception information:
Traceback (most recent call last):
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main
status = self.run(options, args)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/commands/install.py", line 324, in run
requirement_set.prepare_files(finder)
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_set.py", line 634, in _prepare_file
abstract_dist.prep_for_dist()
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_set.py", line 129, in prep_for_dist
self.req_to_install.run_egg_info()
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/req/req_install.py", line 439, in run_egg_info
command_desc='python setup.py egg_info')
File "/usr/share/docassemble/local/local/lib/python2.7/site-packages/pip/utils/__init__.py", line 707, in call_subprocess
% (command_desc, proc.returncode, cwd))
InstallationError: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-YFUcus-build/
Any ideas?
Creating a new package in Docassemble and then pushing to Github results in an error like the one quoted below the first time.
Committing a second time works without any error.
Error
create_playground_package: error running git push. Doing GIT_SSH=/tmp/datempbf5V3v.sh git clone [email protected]:nonprofittechy/docassemble-Discovery.git
Cloning into 'docassemble-Discovery'...
Warning: Permanently added 'github.com,192.30.253.112' (RSA) to the list of known hosts.
Doing git config user.email '[email protected]'
Doing git config user.name 'System Administrator'
Doing git add .
Doing git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: LICENSE
new file: MANIFEST.in
new file: README.md
new file: docassemble/Discovery/__init__.py
new file: docassemble/Discovery/data/questions/test.yml
new file: docassemble/Discovery/data/sources/README.md
new file: docassemble/Discovery/data/static/README.md
new file: docassemble/Discovery/data/templates/README.md
new file: docassemble/Discovery/discovery.py
new file: docassemble/__init__.py
new file: setup.cfg
new file: setup.py
Doing git commit -m 'Initial Commit (testing syntax)'
[master 045d270] Initial Commit (testing syntax)
12 files changed, 121 insertions(+), 2 deletions(-)
create mode 100644 MANIFEST.in
create mode 100644 README.md
create mode 100644 docassemble/Discovery/__init__.py
create mode 100644 docassemble/Discovery/data/questions/test.yml
create mode 100644 docassemble/Discovery/data/sources/README.md
create mode 100644 docassemble/Discovery/data/static/README.md
create mode 100644 docassemble/Discovery/data/templates/README.md
create mode 100644 docassemble/Discovery/discovery.py
create mode 100644 docassemble/__init__.py
create mode 100644 setup.cfg
create mode 100644 setup.py
Doing GIT_SSH=/tmp/datempbf5V3v.sh git push --set-upstream origin None
error: src refspec None does not match any.
error: failed to push some refs to '[email protected]:nonprofittechy/docassemble-Discovery.git'
On most screens of Docassemble, pressing enter submits the form and advances to the next screen. It does not do so if there are only buttons on the screen. I'm not sure if it's possible to distinguish between continue and other buttons, but it would be a small improvement to consistency if pressing "enter" advanced to the next page when the only option is to continue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.