Comments (1)
Slightly modified proposal:
- Leave old doctypes as is, introduce new doctype
Extension Scripts
or justExtensions
(naming can be dealt with later) - Script types based on folder structure
- /scripts
- /doctype_events
- Sales Order.py (all events moved inside single file like controllers)
- /api
- path.py
- /cron
- crontab (cron -> file.py)
- script.py
Execution:
- Use
exec
directly instead ofsafe_exec
i.e. allow everything. - Not allowed in shared environment (same as current server script v15)
- Provide a flag for using old syntax OR write a code-rewriter for old script to migrate to normal python syntax instead of
safe_exec
ones (quite hard IMO) - Once this is ready and we are confident about it, migrate server script contents to file and disable old doctype.
Pros:
- better security model
- version controllable
- full access to vanilla python, libraries, imports
Cons:
- Without a UI editor this can be quite a pain for users to edit using SSH. This can be solved by FC. For Frappe docker we can provide VS Code container with some control over who can access it. ( @revant 👀 )
- Allowing full python also means allowing monkey patching using this, which eventually bigbraindevs will do. 🌚
- breaking & migration woes
from frappe.
Related Issues (20)
- Make Email Spam
- /
- limited access to table to custom user role HOT 2
- Add custom lib to frappe without api
- Request for Serbian (Latin) Language Localization (just create language)
- Request for Official Verification and Merge of Develop Branch Changes into Version 14
- Attach field and attach image field cannot store multiple images
- Sort Field setup in Customize Form not working HOT 1
- Feat: Option to get specific custom print format PDF in A5 size or in Landscape
- Repeated URL search parameters are not correctly handled by the router when clicking links
- Hide ID in search fields of links for Doctype with Title Field. HOT 2
- how to add key in redis.bootinfo.user_info?
- Assignment of a Private Workspace Created By One User To Another.
- Issue: Not able to sync sent emails from mail server
- Custom scripts are not working properly in selling related doctypes HOT 2
- child docs where "User Permissions" are applied can block access to their parent doc HOT 1
- "tabdocfield does not exists" error on fresh new site installation although the table created
- Request for Backports HOT 1
- Is There Any Resource - How to customize full website template
- Error Code: 417 Uncaught Server Exception There was an error building this page HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from frappe.