-
Notifications
You must be signed in to change notification settings - Fork 156
Migrate to Jupyter fork with AI features #76
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
newScript.onload = resolve; | ||
newScript.async = true; | ||
document.head.appendChild(newScript); | ||
newScript.src = url; |
Check warning
Code scanning / CodeQL
DOM text reinterpreted as HTML
if (!quiet) { | ||
console.debug('>', cmd); | ||
} | ||
const value = childProcess.execSync(cmd, options); |
Check warning
Code scanning / CodeQL
Shell command built from environment values
// try to match the indentation level of the {{var}} in the input template. | ||
templ = templ.split(`{{${key}}}`).reduce((acc, cur) => { | ||
// Regex: 0 or more non-newline whitespaces followed by end of string | ||
const indentRe = acc.match(/([^\S\r\n]*).*$/); |
Check failure
Code scanning / CodeQL
Polynomial regular expression used on uncontrolled data
if (!quiet) { | ||
console.debug('>', cmd); | ||
} | ||
const value = childProcess.execSync(cmd, options); |
Check warning
Code scanning / CodeQL
Indirect uncontrolled command line
} | ||
|
||
// Assign as `any`` for compatibility with spawn `OpenMode`` options | ||
const out: any = fs.openSync(log_file, 'a'); |
Check failure
Code scanning / CodeQL
Potential file system race condition
} | ||
if (prev !== formatted) { | ||
// Write out changes and notify | ||
fs.writeFileSync(fpath, formatted); |
Check failure
Code scanning / CodeQL
Potential file system race condition
publish: $authenticated | ||
unpublish: $authenticated | ||
proxy: npmjs`; | ||
fs.writeFileSync(config, config_text, { encoding: 'utf-8' }); |
Check failure
Code scanning / CodeQL
Insecure temporary file
} | ||
|
||
// Assign as `any`` for compatibility with spawn `OpenMode`` options | ||
const out: any = fs.openSync(log_file, 'a'); |
Check failure
Code scanning / CodeQL
Insecure temporary file
|
||
// Assign as `any`` for compatibility with spawn `OpenMode`` options | ||
const out: any = fs.openSync(log_file, 'a'); | ||
const err: any = fs.openSync(log_file, 'a'); |
Check failure
Code scanning / CodeQL
Insecure temporary file
assert.deepStrictEqual(data, orig); | ||
return false; | ||
} catch (error) { | ||
fs.writeFileSync(filePath, text, 'utf8'); |
Check failure
Code scanning / CodeQL
Insecure temporary file
a2a767e
to
cd9e244
Compare
Co-authored-by: Ramon Garate <[email protected]>
…to fix-error-with-ai
…to fix-error-with-ai
…to fix-error-with-ai
Our goal with Pretzel AI is to make the best tool for all data use-cases. This means many things: a great visual/AI enabled data exploration, a great SQL IDE, a great collaborative data workspace, an visually amazing dashboard and many more things.
We needed some place to start. We tried to make a visual and AI enabled data exploration tool that runs completely in the browser. We soon realized the challenge with this - it's very hard to get data professionals to switch with this approach. Why does that matter? In our opinion, to create change in an established space, you need to convert people who are the most passionate first. These users drive the change.
For us, that means targeting data scientists, analysts, research, ML engineers and people who work with data every single day and find their existing tools lacking. This means focusing on improving the tool that these power users use - Jupyter.
We could've made a new notebook tool from the ground up but we decided not to - switching costs are a thing and we want to make it extremely easy to switch. So, we chose to fork Jupyter and add features to it.
I'll cover more details in a blogpost at some point on each of these points but for now, here's the PR that merges our first major change - adding native AI code gen features in Jupyter