gramener / gramex-guide Goto Github PK
View Code? Open in Web Editor NEWGramex a data visualization server written in Python and JavaScript
Home Page: https://learn.gramener.com/guide/
Gramex a data visualization server written in Python and JavaScript
Home Page: https://learn.gramener.com/guide/
Applications are tested for security purposes by third parties. We need to document the practices for the benefit of everyone.
@sainathkyasa helped document some of them. I'll create a PR for the same. It can go under Deploy page, Security section
list: https://paper.dropbox.com/doc/Security-practices--A_IkkWi7vM5p9ewpkaIjiPTeAg-4UbHceJbLgbQkCPIUlI8p
reference: https://seaborn.pydata.org/whatsnew.html?highlight=lvplot#deprecations-and-removals
lvplot is currently used in the Categorical Plots section -- last but one chart.
It works fine on the server now but is broken on my local. I use seaborn v0.11.1.
In the Documentation of Gramex, in the Apps section all the links in the subsection g1 Libraries are broken :- https://learn.gramener.com/guide/g1/dist/mapviewer.min.js, https://learn.gramener.com/guide/g1/dist/ajax.min.js, https://learn.gramener.com/guide/g1/dist/datafilter.min.js, https://learn.gramener.com/guide/g1/dist/event.min.js, https://learn.gramener.com/guide/g1/dist/formhandler.min.js, https://learn.gramener.com/guide/g1/dist/highlight.min.js, https://learn.gramener.com/guide/g1/dist/sanddance.min.js, https://learn.gramener.com/guide/g1/dist/search.min.js, https://learn.gramener.com/guide/g1/dist/template.min.js, https://learn.gramener.com/guide/g1/dist/types.min.js, https://learn.gramener.com/guide/g1/dist/urlchange.min.js, https://learn.gramener.com/guide/g1/dist/urlfilter.min.js , https://learn.gramener.com/guide/g1/dist/g1.js
ref: https://learn.gramener.com/guide/groupmeans/
this page is linked in https://learn.gramener.com/guide/modelhandler/
In the Gramex Guide, Testing Section :- After creating gramextest.yaml and running pytest -s -v gives the error :--
"Direct Construction of YamlFile has been deprecated, please use YamlFile.from_parent" .
The screenshot of the error is given:-
https://www.dropbox.com/s/zz6qieu72n2083v/Gramex_Test_Error.jpeg?dl=0
Requesting https://learn.gramener.com/guide/search/meta.json
from the IDE blocks the request because of CORS.
This public Tip page https://learn.gramener.com/guide/tips/guide-to-anonymising-data.md links a Private Wiki link.
My suggestion would be to make the content available on the Tip page removing any confidential information (I currently see none).
explaining terms like
YAMLURL
YAMLPATH
GRAMEXDATA
and other similar constants we expect users to configure.
url:
drivehandler:
pattern: /$YAMLURL/drive
handler: DriveHandler
kwargs:
path: $GRAMEXDATA/apps/guide/drive/ # ... save files here
Tutorial link: https://learn.gramener.com/guide/tutorials/dashboards/
We can update urlchange link in Step 2 to g1 doc page instead of its source code page.
In the Gramex Guide(Libraries) Smart Alerts section , all the links with the text "Preview" are showing "File Missing" error on clicking.
Some of the broken links are :- https://learn.gramener.com/guide/alert/preview/?alert=alert-email , https://learn.gramener.com/guide/alert/preview/?alert=alert-content-file , https://learn.gramener.com/guide/alert/preview/?alert=alert-images, https://learn.gramener.com/guide/alert/preview/?alert=alert-attachments
Add access_token > body > resource: https://graph.microsoft.com/
auth/aad:
pattern: /$YAMLURL/login
handler: OAuth2
kwargs:
client_id: '1239bdca-----------------------------'
client_secret: 'Pyum-----------------------------'
authorize:
url: 'https://login.microsoftonline.com/{TENANT_ID}/oauth2/authorize'
access_token:
url: 'https://login.microsoftonline.com/{TENANT_ID}/oauth2/token'
body:
grant_type: 'authorization_code'
resource: https://graph.microsoft.com/
user_info:
url: 'https://graph.microsoft.com/v1.0/me/'
headers:
Authorization: 'Bearer {access_token}'
Accept: 'application/json'
Content-Type: 'application/json'
a PyCon India workshop participant reported this error
Attribute error: module os has no attribute startfile
solution: use slidesense --no-open
to avoid opening the output file
TODO: document in https://learn.gramener.com/guide/pptxhandler/
Alerts are documented in the Admin page
clicking on Alert Example prompts this page - https://learn.gramener.com/guide/auth/db?next=%2Fguide%2Fadmin%2Fadmin%2Falert
login with any user
this raises a 403 error related to XSRF
ref: https://gramener.com/gramex/guide/capturehandler/capture?ext=png
error: "Error: WebSocket is not open: readyState 3 (CLOSED)"
Thanks Deepika for raising this!
URL: https://learn.gramener.com/guide/tutorials/quickstart/#step-4-adding-a-chart
var view = new vega.View(vega.parse(vl.compile(spec).spec))
vl
is updated to vegaLite
in v4. Release notes
var view = new vega.View(vega.parse(vegaLite.compile(spec).spec))
DriveHandler:
PPTXHandler:
Install:
gramex setup -–all
command is not mentioned in Conda Installdocker run –it –name gramex –p 9988:9988 gramener/gramex /bin /bash
is not workingQuickstart tutorial must be extended to support workflows done on gramex.gramener.com
Potential changes for sections:
I have installed gramex via Conda as well as via pip. I have also installed node.js and have set the Path Variable accordingly. However even after that ,the command "gramex setup ui" is still returning with an error :"Build failed with error code 1".
I am running Gramex in Windows 8.1 . I am hereby attaching the screenshots of the error I am facing.
The file for the ML App Tutorial in the Gramex Guide is missing. The link for the ML App Tutorial :- https://learn.gramener.com/guide/https://github.com/gramexrecipes/gramex-ml-workshop/
From the current documentation, it is not clear how to use the 'actions'
option in $.formhandler. It could also use some examples.
But the guide says that even POST can be used.
From the guide,
To create a model send a PUT/POST request to /model/<name>/ with the following URL Query Parameters or JSON Body Arguments...
But the handler creates new models only on PUT. See this.
Is there a reason why we don't allow POST to create new models?
"modify: can be any expression/function that uses data – count of records edited and handler – handler.args contains data submitted by the user."
link to "data submitted" is http://localhost:9988/formhandler/(#formhandler-edits)
and must be http://localhost:9988/formhandler/#formhandler-edits
(without the braces)
/gitlab fails at "Gitlab OAuth2 example" with a "The redirect URI included is not valid." error
it mirrors gramener.com/demo post-auth but fails to fetch CSS
, JS
dependencies
400 error on fetching tweets, even post-auth
remove /dashboards/quiz entry
links to dist/*
broken, at the end of the page.
broken: https://learn.gramener.com/guide/languagetool/languagetool/
broken: https://learn.gramener.com/guide/drivehandler/drivehandler
When I run docker run --name gramex-instance -p 9988:9988 gramener/gramex
DEBUG 30-Mar 13:15:23 config PORT Loading config: /usr/local/lib/python3.7/site-packages/gramex/apps.yaml
ERROR 30-Mar 13:15:23 install PORT guide: no directory /root/.config/gramexdata/apps/guide
In the Gramex guide in the DriveHandler section (Gramex Microservices) , on clicking the "source" of File Manager , it is showing "Error 404 , web page missing". I am pasting the link hereby:- https://github.com/gramener/gramex-guide/blob/master/drivehandler/gramex.aml
Currently, to search I need to abandon the current page and go to a different page.
Can we extend search utility from index page to all pages?
In FormHandler prepare document,
the below url is working fine(filtering cross column where Yes is present)
https://learn.gramener.com/guide/formhandler/replace?c=Yes&_format=html
but, when c parameter is removed from url, ideally it should return full data, but it is filtering out null values.
https://learn.gramener.com/guide/formhandler/replace?&_format=html
In the Gramex Guide (Gramex Microservices), Google ProxyHandler section the following links are broken :- 1) http://googleapis.com/ 2)https://graph.facebook.com
Also in the Twitter RESTHandler subsection the following link is giving error message(error code :500) :- 1) https://learn.gramener.com/guide/twitterresthandler/twitter/
This will help users try Gramex on the cloud, without a local install. Makes it easier.
It also gives confidence that Gramex can be installed in users' preferred cloud environments.
... and others
raised by @manojraju-g
upon redirection from http to https, nginx serves a "301 moved permanently" message. This needs to be customized to not reveal the server name.
once Forms app stabilizes, add a note on how to import forms (create a new page) in https://learn.gramener.com/guide/apps/
page: https://learn.gramener.com/guide/admin/
while auth
is supported for accessing admin
, it's stated as
The ADMIN_AUTH section is the same as specifying the auth: authorization on all admin pages.
ref
and is unclear on the specifics.
adding an example as below will help:
import:
admin:
...
ADMIN_AUTH:
login_url: /$YAMLURL/login_endpoint
...
This needs to be updated for every version of Gramex Released
Structure should include at least..
And any other relevant information that could create contention
In the Gramex Guide , Debugging Gramex Section , there is a part referring :
"You can use WinPDB – a cross-platform GUI for pdb – on Gramex using:
conda install -c jacob-barhak -c anaconda winpdb
winpdb.bat /path/to/gramex/main.py "
But running "conda install -c jacob-barhak -c anaconda winpdb" gives comaptibility error as shown in the screenshot(link shared) :- https://www.dropbox.com/s/ac8tr3mxisqbjv2/Debugger_error.jpeg?dl=0
My Machine Specifications:- Windows 8.1, Python - 3.7, gramex version - 1.68 .
In the Gramex Documentation, in the Gramex Apps ,Language Tools section ,the following links in the Examples subsection are giving error messages :- 1) https://learn.gramener.com/guide/languagetool/languagetool/?q=The%20quick%20brown%20fox%20jamp%20over%20the%20lazy%20dog. 2) https://learn.gramener.com/guide/languagetool/languagetool/?q=how%20are%20you 3) https://learn.gramener.com/guide/languagetool/languagetool/?q=I%20is%20fine.
In the Gramex Guide , the Dashboard Tutorial link :- https://learn.gramener.com/guide/tutorials/dashboard
shows File Missing.
However just in the next Section that is the "Charts Tutorial" , there is a link of reference to the "previous" tutorial or the Dashboard Tutorial.
There the link to the Dasboard Tutorial is working. I am pasting the correct link of the Dashboard Tutorial here, please update the incorrect link :-
https://learn.gramener.com/guide/tutorials/dashboards/
Language tool link - https://learn.gramener.com/guide/languagetool/
The link in the text "This mounts the app at languagetool/." is broken (error on Java) which is the below:
By doing this we will have a card for each handler in IDE, which is in sync with our platform story of number of components in Gramex.
ref: https://learn.gramener.com/guide/mapviewer/
review prismjs
dependency and replace if necessary
In the Documentation of Gramex, in the Libraries section the following link in the subsection HTML Email is broken :- http://www.activecampaign.com/email-design-guide/
When I run gramex init I get the following issue:
Traceback (most recent call last):
File "/home/edhiraj/.miniconda/envs/delivery/bin/gramex", line 10, in <module>
sys.exit(commandline())
File "/home/edhiraj/.miniconda/envs/delivery/lib/python3.7/site-packages/gramex/__init__.py", line 177, in commandline
callback(**kwargs)
File "/home/edhiraj/.miniconda/envs/delivery/lib/python3.7/site-packages/gramex/install.py", line 650, in init
_copy(source, target, template_data=data)
File "/home/edhiraj/.miniconda/envs/delivery/lib/python3.7/site-packages/gramex/install.py", line 617, in _copy
result = Template(result).generate(**template_data)
File "/home/edhiraj/.miniconda/envs/delivery/lib/python3.7/site-packages/tornado/template.py", line 302, in __init__
reader = _TemplateReader(name, escape.native_str(template_string),
File "/home/edhiraj/.miniconda/envs/delivery/lib/python3.7/site-packages/tornado/escape.py", line 217, in to_unicode
return value.decode("utf-8")
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xdf in position 9: invalid continuation byte
However, the project does get initialised
When I am running "pip install --upgrade gramex" to update gramex via pip i am getting the following error(Screenshot attached):-https://www.dropbox.com/s/46yt5e7eim1uxx6/Update_Error.png?dl=0
doc link: https://learn.gramener.com/guide/r/#rmarkdown
demo link: https://learn.gramener.com/guide/r/RMarkdown-story.Rmd
error:
ValueError('Buffer for this type not yet supported.')
also noticed by @Shiva-1605
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.