profile
viewpoint
Paul Fitzpatrick paulfitz Grist Labs ZZ9 Plural Z Alpha http://paulfitz.github.io Ex-goat herder. Living on a planet in space. Once and future thing. Positive semidefinite.

paulfitz/coopy 83

distributed spreadsheets with intelligent merges

paulfitz/catsql 61

cat for sql dbs

paulfitz/blender2haxe 5

a fork of rozengain.com's great AS3Export tool, to support haxe.

paulfitz/asql 2

Query a database in natural language

gliggy/AllAboutLeo 1

my personal website

gliggy/funny_letters 1

Funny Letters!

paulfitz/acts_as_ferret 1

Rails full text search plugin

push eventgristlabs/grist-core

Paul Fitzpatrick

commit sha e5b67fee7eecf18742ae3aeb0508c7c73e6393fa

(core) visualize simple differences between documents Summary: Render simple differences between documents. * Show cell changes. * Show cell conflicts. * Show row additions/deletions. Doesn't support any schema changes, and is untested in the presence of schema changes. Any widgets that access row data without using `cells` fields won't receive correct data. Not addressed: * Rendering conflicts in mixed row addition/updating/deleting. * Column additions/deletions, option changes, etc. * Document level changes. * Table and column renames (though anticipated in ActionSummary structure). * Page-level changes. * Drawing attention to changes (marking changed pages+views, suppressing unchanged rows, etc). * Rendering differences in views other than GridView. * Adding UI for initiating a comparison. * Editing while comparing. Replaces {D2600} Test Plan: added tests Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2618

view details

Paul Fitzpatrick

commit sha 2edf64c1323599cb3d4ac1c2c98017b760944d92

(core) remove metrics Summary: This removes some old metric code. There's also a user preference dialog that has a single option (whether to allow metrics) this is left in place with a dummy option. It could be ripped out as well, probably. Test Plan: existing tests pass Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2622

view details

Dmitry S

commit sha bac070de9163962cb7bbe4316920267a56a5260e

(core) With ?aclUI=1 in the URL, UserManager for documents includes a button to open 'Access Rules' Summary: AccessRules class that implements that UI is intended to look vaguely like detailed rules might look in the future, but only supports the very limited set we have now. In addition, UserManager and BillingPage code is separated into their own webpack bundles, to reduce the sizes of primary bundles, and relevant code from them is loaded asynchronously. Also add two TableData methods: filterRowIds() and findMatchingRowId(). Test Plan: Only tested manually, proper automated tests don't seem warranted for this temporary UI. Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2620

view details

Paul Fitzpatrick

commit sha 5d60d51763abb494836f3ecd18c5db014d4dff19

(core) replace material in bower_components with package.json lines + yarn cache Summary: In preparation for moving the client code to grist-core, this strips out the third party code checked in to bower_components. Since bower maintainers are recommending migration, I list the needed packages in package.json. * bootstrap-tokenfield is removed * jqueryui is a later version (older version is not available on npmjs) There is a theme image that was included by `electron-files.rsync` that is no longer present and does not seem to be needed? I've trimmed material that no longer seems present from this file. I've retained a `bower_components` directory with soft links to the needed material. The directory could be eliminated with some more work, but that would be easier to review as a separate diff. Packaging appears to work correctly, but it will be important to check on staging also. Test Plan: existing tests pass; packaging spot checks look sane - client loads ok and can't tickle any 404s Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2623

view details

Paul Fitzpatrick

commit sha 1654a2681f3f7ed6fac002be22ac6cb94b35bd88

(core) move client code to core Summary: This moves all client code to core, and makes minimal fix-ups to get grist and grist-core to compile correctly. The client works in core, but I'm leaving clean-up around the build and bundles to follow-up. Test Plan: existing tests pass; server-dev bundle looks sane Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2627

view details

Dmitry S

commit sha 90db5020c967a08f83d1bf36cfafd0ba3c1fa9f3

(core) Improve focus and keyboard shortcuts in modals. Summary: - Factor out focusing logic from Clipboard to FocusLayer. - Generalize FocusLayer to support adding a temporary layer while a modal is open. - Stop Mousetrap shortcuts while a modal is open. - Refactor how Mousetrap's custom stopCallback is implemented to avoid needing to bundle knockout for mousetrap. Test Plan: Added a test that Enter in a UserManager doesn't open a cell editor from underneath the modal. Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2626

view details

Dmitry S

commit sha 2d023377ce29c3d09bea0d1c92ec98d67dce8463

(core) Fix CustomView css to take full height of widget on all browsers including Safari Summary: On Safari, in particular on mobile, the custom widget was truncated in height. Test Plan: Tested manually on FF, Chrome, Safari (desktop) and Safari, Firefox (mobile) Reviewers: paulfitz Reviewed By: paulfitz Subscribers: paulfitz Differential Revision: https://phab.getgrist.com/D2629

view details

Paul Fitzpatrick

commit sha 8dbcbba6b599020a1193d2361799880126508620

(core) fix invite links and add tests with APP_HOME_URL set Summary: Invite links broke when some base domain plumbing changed. This fix updates them to be aware of the base domain, and tests the Notifier class with APP_HOME_URL set to make sure the environment variable has the expected effect. Test Plan: added test, updated tests Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2630

view details

Paul Fitzpatrick

commit sha bd6a54e90198a7117fa4ebdcbb6d87b7d54c809e

(core) mitigate csrf by requiring custom header for unsafe methods Summary: For methods other than `GET`, `HEAD`, and `OPTIONS`, allow cookie-based authentication only if a certain custom header is present. Specifically, we check that `X-Requested-With` is set to `XMLHttpRequest`. This is somewhat arbitrary, but allows us to use https://expressjs.com/en/api.html#req.xhr. A request send from a browser that sets a custom header will prompt a preflight check, giving us a chance to check if the origin is trusted. This diff deals with getting the header in place. There will be more work to do after this: * Make sure that all important endpoints are checking origin. Skimming code, /api endpoint check origin, and some but not all others. * Add tests spot-testing origin checks. * Check on cases that authenticate differently. - Check the websocket endpoint - it can be connected to from an arbitrary site; there is per-doc access control but probably better to lock it down more. - There may be old endpoints that authenticate based on knowledge of a client id rather than cookies. Test Plan: added a test Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2631

view details

Dmitry S

commit sha d2ad5edc4639ad5e7ed83e94de7f128d3f506b4c

(core) Cleanup removing some old unused files, fixing logo.css, and removing #grist-app. Summary: - Move logo.css to core, since it's not included otherwise - Remove unused old DocList and ViewLinker files. - Remove #grist-app div that was only serving to supply a background Test Plan: No changes of behavior, existing tests should pass. Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2634

view details

Dmitry S

commit sha 99ab09651eca218a9dbde148c2a19264efe7f813

(core) Implement 'Print widget' option to print individual view sections. Summary: - Supports multi-page printing with some aggressive css overrides. - Relies on a new function implemented by grist-plugin-api to print a multi-page CustomView. - Renders all rows for printing for scrolly-based views. Test Plan: Doesn't seem possible to do a selenium test for printing. Tested manually on Chrome, Firefox, and Safari. Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2635

view details

Paul Fitzpatrick

commit sha a4929bde726b97ac064c507b9deac584f58bbc11

(core) add some row-level access control Summary: This implements a form of row-level access control where for a given table, you may specify that only owners have access to rows for which a given column has falsy values. For simplicity: * Only owners may edit that table. * Non-owners with the document open will have forced reloads whenever the table is modified. Baby steps... Test Plan: added tests Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2633

view details

Paul Fitzpatrick

commit sha 4d3777578edd7394bdb70c0ae564fc8bab637600

(core) add Dockerfile for grist-core Summary: This adds a two-stage Dockerfile for grist-core. The first stage builds Grist, and the second collects all files needed to run Grist. The resulting image is about 600 MB which is quite a bit bigger than it needs to be, but seems fine for now when the first goal is to establish that people can open and edit Grist files on their own infrastructure. The image uses stock python rather than our sandboxed python for now. Test Plan: manual Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2637

view details

Dmitry S

commit sha 5247521cb8ff324215b4ba7edbd8484d93a098c1

(core) Improve printing of tables, fix printing of charts, add a browser test. Summary: - Include column headers on each page for printing tables. - Avoid page-breaks inside rows or cards of a card-list. - Fix printing of charts that did not show up at all before. - Add a browser test, not great, but somewhat functional. Test Plan: New test, plus tested manually. Column headers work on Chrome and Firefox (not Safari). Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2636

view details

Dmitry S

commit sha 0b1aa22ad9fc599aeba95cd9ec30e5c2d8a9a9cb

(core) Ask the user some questions after they sign up and set their name. Summary: - Add a /welcome/info endpoint, to serve a page after /welcome/user - Add a new forms module to factor out the styles that feel more natural for a web form. - Simplify form submission using JSON with a BaseAPI helper. - The POST submission to /welcome/info gets added to a Grist doc, using a specialPermit grant to gain access. A failure (e.g. missing doc) is logged but does not affect the user. Test Plan: Added a test case. Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2640

view details

Dmitry S

commit sha ad7be0fd8d7328acf306a0b89ddd097ab85889f2

(core) Fix WelcomePage to use an explicit action URL, and parse submitted body in time to log it with errors. Test Plan: Tested manually that "Preflight" error goes away in Safari. Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2644

view details

Paul Fitzpatrick

commit sha 27fd894fc75275e66d99a0a5462306a489a3a5fa

(core) switch to newer download endpoint in client Summary: * Fix old download endpoint to correctly pass org info in redirect. * Switch to use newer download endpoint in client. Old endpoint not removed. I started doing that, but it is used in copying, and it struck me that I'm not sure what should happen when copying from a site document to "Personal" - should it be the Personal that is associated with docs.getgrist.com currently, of should it be the Personal that is associated with the email of the user on whatever-site-we-are-on.getgrist.com. So leaving that as separate work. Test Plan: updated tests Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2639

view details

Paul Fitzpatrick

commit sha c879393a8e79343745019cedf4ece2f6d8e4815f

(core) support adding user characteristic tables for granular ACLs Summary: This is a prototype for expanding the conditions that can be used in granular ACLs. When processing ACLs, the following variables (called "characteristics") are now available in conditions: * UserID * Email * Name * Access (owners, editors, viewers) The set of variables can be expanded by adding a "characteristic" clause. This is a clause which specifies: * A tableId * The name of an existing characteristic * A colId The effect of the clause is to expand the available characteristics with all the columns in the table, with values taken from the record where there is a match between the specified characteristic and the specified column. Existing clauses are generalized somewhat to demonstrate and test the use these variables. That isn't the main point of this diff though, and I propose to leave generalizing+systematizing those clauses for a future diff. Issues I'm not dealing with here: * How clauses combine. (The scope on GranularAccessRowClause is a hack to save me worrying about that yet). * The full set of matching methods we'll allow. * Refreshing row access in clients when the tables mentioned in characteristic tables change. * Full CRUD permission control. * Default rules (part of combination). * Reporting errors in access rules. That said, with this diff it is possible to e.g. assign a City to editors by their email address or name, and have only rows for those Cities be visible in their client. Ability to modify those rows, and remain updates about them, remains under incomplete control. Test Plan: added tests Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2642

view details

Dmitry S

commit sha d7802bc7dbe3031b06716e196bac68e311574a1d

(core) Support international addresses in the Billing form Summary: - When displaying, include the country code, and don't assume state is always present. - When entering, include a country selector (defaulting to US), and make state/zip optional when non-US. - Bring in an npm module with country codes. Test Plan: Added a browser test case. Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D2647

view details

Paul Fitzpatrick

commit sha 9287439e5ae2014cde93c2bda12ddd955f9b38b1

(core) give instructions on using Grist with docker Summary: cleans up docker build and instructions. Test Plan: docker image and instructions tested manually Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2648

view details

push time in a day

PullRequestReviewEvent

pull request commentgristlabs/grist-widget

Print labels

This looks plausible. US-centric but that's fine for now. It would be neat if there were an easy way to supply these widgets with a test json payload, like https://gristlabs.github.io/grist-widget/invoices/index.html?demo=1 but without needing per-widget special code for it (apart from supplying a good test json). Should be doable with some kind of harness page. Then people could click around on https://gristlabs.github.io/grist-widget/ to get a sense for the widgets available.

Created a backlog item for this. Seems one of several things we should do to make Custom Widgets friendlier.

Thanks!

dsagal

comment created time in a day

Pull request review commentgristlabs/grist-widget

Print labels

+body {+  font-family: Sans-Serif;+  padding: 0;+  margin: 0;+  --label-outline: 0 0 0 1px #aaa;+}++*, *:before, *:after {+  -webkit-box-sizing: border-box;+  -moz-box-sizing: border-box;+  box-sizing: border-box;+}++.status {+  padding: 8px;+  margin-top: 40px;+  color: blue;+}++.label-content {+  white-space: pre-wrap;+  text-align: left;+  font-size: 11pt;+}++.page-outer {+  display: flex;+  align-items: center;+  justify-content: center;+  width: 8.5in;

8.5x11 isn't a thing in Europe (inches aren't even a thing in most of Europe), unless something has changed since I last printed there. I didn't learn about it until academia when wondering why american papers printed funny. But I'm fine being US-centric for now.

dsagal

comment created time in a day

PullRequestReviewEvent

Pull request review commentgristlabs/grist-widget

Print labels

+body {+  font-family: Sans-Serif;+  padding: 0;+  margin: 0;+  --label-outline: 0 0 0 1px #aaa;+}++*, *:before, *:after {+  -webkit-box-sizing: border-box;+  -moz-box-sizing: border-box;+  box-sizing: border-box;+}++.status {+  padding: 8px;+  margin-top: 40px;+  color: blue;+}++.label-content {+  white-space: pre-wrap;+  text-align: left;+  font-size: 11pt;+}++.page-outer {+  display: flex;+  align-items: center;+  justify-content: center;+  width: 8.5in;

Sizes are close enough that it often doesn't matter, but probably would matter for lining up labels.

dsagal

comment created time in a day

Pull request review commentgristlabs/grist-widget

Print labels

+body {+  font-family: Sans-Serif;+  padding: 0;+  margin: 0;+  --label-outline: 0 0 0 1px #aaa;+}++*, *:before, *:after {+  -webkit-box-sizing: border-box;+  -moz-box-sizing: border-box;+  box-sizing: border-box;+}++.status {+  padding: 8px;+  margin-top: 40px;+  color: blue;+}++.label-content {+  white-space: pre-wrap;+  text-align: left;+  font-size: 11pt;+}++.page-outer {+  display: flex;+  align-items: center;+  justify-content: center;+  width: 8.5in;

Hmm this will be annoying for Europeans, who print to A4 rather than Letter by default.

dsagal

comment created time in a day

Pull request review commentgristlabs/grist-widget

Print labels

+body {+  font-family: Sans-Serif;+  padding: 0;+  margin: 0;+  --label-outline: 0 0 0 1px #aaa;+}++*, *:before, *:after {+  -webkit-box-sizing: border-box;+  -moz-box-sizing: border-box;+  box-sizing: border-box;+}++.status {+  padding: 8px;+  margin-top: 40px;+  color: blue;+}++.label-content {+  white-space: pre-wrap;+  text-align: left;+  font-size: 11pt;+}++.page-outer {+  display: flex;+  align-items: center;+  justify-content: center;+  width: 8.5in;+  height: 11in;+}++@media not print {+  .page-outer {+    overflow: hidden;+    width: calc(8.5in * var(--page-scaling, 1));+    height: calc(11in * var(--page-scaling, 1));+  }+  .labelpage {+    transform: scale(var(--page-scaling, 1));+  }+}++.label {+  padding: 0.08in;+  border-radius: 0.06in;+  background-color: white;+  display: inline-flex;+  align-items: center;+  justify-content: center;+  vertical-align: bottom;+  box-shadow: var(--label-outline);+}++.labelpage {+  display: flex;+  flex-flow: row wrap;+  align-items: flex-start;+  justify-content: space-between;+  align-content: space-between;+  height: calc(11in - 2 * var(--vmargin, 0));+  width: calc(8.5in - 2 * var(--hmargin, 0));+  min-height: calc(11in - 2 * var(--vmargin, 0));+  min-width: calc(8.5in - 2 * var(--hmargin, 0));+}++/*+ * Firefox includes unknown fixed margins; to work around it, we center content in the page, and+ * set it in @media print to 100%, which may be less than the page due to these margins.+ */++.page-labels8 {+  --vmargin: 0.5833in;+  --hmargin: 0.6875in;+}+.label-labels8 {+  height: 2.3333in;+  width: 3.375in;+}++.page-labels10 {+  --vmargin: 0.5in;+  --hmargin: 0.156in;+}+.label-labels10 {+  height: 2in;+  width: 4in;+}++.page-labels20 {+  --vmargin: 0.5in;+  --hmargin: 0.167in;+}+.label-labels20 {+  height: 1in;+  width: 4in;+}+.page-labels30 {+  --vmargin: 0.5in;+  --hmargin: 0.1875in;+}+.label-labels30 {+  height: 1in;+  width: 2.625in;+}++.page-labels60 {+  --vmargin: 0.875in;+  --hmargin: 0.5in;+}+.label-labels60 {+  height: 0.5in;+  width: 1.75in;+}++.page-labels80 {+  --vmargin: 0.5in;+  --hmargin: 0.3in;+}+.label-labels80 {+  height: 0.5in;+  width: 1.75in;+}++#labeltype {+  font-size: 11pt;+  padding: 4px;+  margin: 8px;+  color: #666;+}++@media print {+  body {+    --label-outline: none;+  }+  html, body, #app, .page-outer, #content, #content-wrap {+    height: 100%;+    width: 100%;+    margin: 0 !important;+    padding: 0;+  }+  @page {+    margin: 0 !important;+  }+  #labeltype {+    display: none;+  }

I learned a lot from reading this css.

dsagal

comment created time in a day

Pull request review commentgristlabs/grist-widget

Print labels

+function ready(fn) {+  if (document.readyState !== 'loading'){+    fn();+  } else {+    document.addEventListener('DOMContentLoaded', fn);+  }+}++let templates = [{

Are you using let vs const to support some older browser?

dsagal

comment created time in a day

Pull request review commentgristlabs/grist-widget

Print labels

+function ready(fn) {+  if (document.readyState !== 'loading'){+    fn();+  } else {+    document.addEventListener('DOMContentLoaded', fn);+  }+}++let templates = [{+  id: 'labels8',+  name: '8 per sheet (2-1/3" x 3-3/8")',+  perPage: 8,+}, {+  id: 'labels10',+  name: '10 per sheet (2" x 4")',+  perPage: 10,+}, {+  id: 'labels20',+  name: '20 per sheet (1" x 4")',+  perPage: 20,+}, {+  id: 'labels30',+  name: '30 per sheet (1" x 2-5/8")',+  perPage: 30,+}, {+  id: 'labels60',+  name: '60 per sheet (1/2" x 1-3/4")',+  perPage: 60,+}, {+  id: 'labels80',+  name: '80 per sheet (1/2" x 1-3/4")',+  perPage: 80,+}];++let startTemplate =+  findTemplate(document.location.hash.slice(1)) ||+  findTemplate(localStorage.getItem('printlabels-template')) ||+  findTemplate('labels30');++function findTemplate(id) {+  return templates.find(t => t.id === id);+}++let app = undefined;+let data = {+  status: 'waiting',+  labels: null,+  template: startTemplate,+};++function arrangeLabels(labels, template) {+  let pages = [];+  let page = [];+  for (let i = 0; i < labels.length; i++) {+    if (page.length >= template.perPage) {+      pages.push(page);+      page = [];+    }+    if (labels[i]) {+      page.push(labels[i]);+    }+  }+  while (page.length < template.perPage) {+    page.push("");+  }+  pages.push(page);+  return pages;+}++function handleError(err) {+  console.error(err);+  let target = app || data;+  target.labels = null;+  target.status = String(err).replace(/^Error: /, '');+  console.log(data);+}++function updateRecords(rows) {+  try {+    data.status = '';+    if (!rows || !rows.length) {+      throw new Error("No data. Please add some rows");+    }+    if (!rows[0].hasOwnProperty('LabelText')) {+      throw new Error('Need a visible column named "LabelText"');+    }+    let haveCounts = rows[0].hasOwnProperty('LabelCount');+    let labels = [];+    for (let r of rows) {+      // parseFloat to be generous about the type of LabelCount. Text will be accepted.+      let count = haveCounts ? parseFloat(r.LabelCount) : 1;+      for (let i = 0; i < count; i++) {+        labels.push(r.LabelText);+      }+    }+    data.labels = labels;+  } catch (err) {+    handleError(err);+  }+}++// Page width before any scaling is applied.+let pageWidth = null;++function updateSize() {+  let page = document.querySelector('.page-outer');+  if (!page) { return; }+  if (!pageWidth) {+    pageWidth = page.getBoundingClientRect().width;+  }+  document.body.style.setProperty('--page-scaling', window.innerWidth / pageWidth);+}++ready(function() {+  // Update the widget anytime the document data changes.+  grist.ready();+  grist.onRecords(updateRecords);+  window.onresize = updateSize;++  Vue.config.errorHandler = handleError;+  app = new Vue({+    el: '#app',+    data: data,+    methods: {arrangeLabels: arrangeLabels},

Just {arrangeLabels} ?

dsagal

comment created time in a day

PullRequestReviewEvent
PullRequestReviewEvent

delete branch gristlabs/grist-core

delete branch : master

delete time in a day

create barnchgristlabs/grist-core

branch : main

created branch time in a day

startedamb26/papers

started time in 14 days

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha caf734589f5b90d409642fb033c0f8d6824d37a8

add a pikesleyism

view details

push time in 14 days

push eventdatacommons/stonesoup

Paul Fitzpatrick

commit sha 421cc244740ee5267f569d2dfc79ee88dc0c9d6d

https tile links

view details

push time in 16 days

push eventpaulfitz/homebrew-data

Paul Fitzpatrick

commit sha e88f8bd9c95d7821581c15c96a7da0861f527c48

Update coopy.rb

view details

push time in 19 days

push eventpaulfitz/homebrew-data

Paul Fitzpatrick

commit sha af2fb421d84f0ee8c31b57bdc790838e13310b19

Update coopy.rb

view details

push time in 19 days

created tagpaulfitz/coopy

tagv0.6.12

distributed spreadsheets with intelligent merges

created time in 19 days

push eventpaulfitz/stonesoup

Paul Fitzpatrick

commit sha a6e2b6827df50c8a0a8492578450ffb7c95b60f3

update no-longer-functioning mapbox tiles Mapbox tiles have changed, see https://blog.mapbox.com/deprecating-studio-classic-styles-d8892ac38cb4 This switches to a currently-supported tile.

view details

Paul Fitzpatrick

commit sha 2a0f2d6c0766e0224972af1fbfb449de44b505f1

Merge pull request #8 from paulfitz/update_mapbox update no-longer-functioning mapbox tiles

view details

push time in 19 days

delete branch paulfitz/stonesoup

delete branch : update_mapbox

delete time in 19 days

push eventpaulfitz/stonesoup

Paul Fitzpatrick

commit sha a6e2b6827df50c8a0a8492578450ffb7c95b60f3

update no-longer-functioning mapbox tiles Mapbox tiles have changed, see https://blog.mapbox.com/deprecating-studio-classic-styles-d8892ac38cb4 This switches to a currently-supported tile.

view details

Paul Fitzpatrick

commit sha 2a0f2d6c0766e0224972af1fbfb449de44b505f1

Merge pull request #8 from paulfitz/update_mapbox update no-longer-functioning mapbox tiles

view details

push time in 19 days

PR merged paulfitz/stonesoup

update no-longer-functioning mapbox tiles

Mapbox tiles have changed, see https://blog.mapbox.com/deprecating-studio-classic-styles-d8892ac38cb4

This switches to a currently-supported tile.

+30 -17

0 comment

4 changed files

paulfitz

pr closed time in 19 days

PR opened paulfitz/stonesoup

update no-longer-functioning mapbox tiles

Mapbox tiles have changed, see https://blog.mapbox.com/deprecating-studio-classic-styles-d8892ac38cb4

This switches to a currently-supported tile.

+30 -17

0 comment

4 changed files

pr created time in 19 days

create barnchpaulfitz/stonesoup

branch : update_mapbox

created branch time in 19 days

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha 96e15dc1b2bc24ac0d0ebd049a4f20e154a0afe2

add a pikesleyism

view details

push time in 23 days

startedlucidrains/vit-pytorch

started time in 24 days

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha 09c0954f4d9240dbb61394657c57df0aaeb0000a

add a pikesleyism

view details

push time in 24 days

startedCartucho/vision_blender

started time in a month

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha 23ed591b64202f1f8eff2e9ccd6025349861859a

add a pikesleyism

view details

push time in a month

push eventpaulfitz/daff

Grant Bakker

commit sha aa4c8f787f84bf4cb47ed61a1637e0c1e413e2c8

update package-lock.json

view details

Grant Bakker

commit sha d0c5237ed9d8a42b06d71037b862447360082823

update fibers

view details

Paul Fitzpatrick

commit sha a2a013cef4c842bef1e8babacdc99fc6e5a1be07

Merge pull request #162 from bakkerthehacker/update-fibers Update fibers

view details

push time in a month

PR merged paulfitz/daff

Update fibers
+27 -14

1 comment

2 changed files

bakkerthehacker

pr closed time in a month

pull request commentpaulfitz/daff

Update fibers

Thanks @bakkerthehacker! Test failure is unrelated, and should be fixed now.

bakkerthehacker

comment created time in a month

push eventpaulfitz/daff

Tim Vergenz

commit sha 8c62566ac1e3aeef1ddb58d3716dd14e8b754add

Clarify that --id and --ignore args take column names The other tool I was using until I found this (csvdiff) uses column numbers, and it took me a while to figure out that this one was using names. 🙂

view details

Paul Fitzpatrick

commit sha c90ae85e506d0aa4c69b2d3d7338321090cd6513

Merge pull request #163 from vergenzt/patch-1 Clarify that --id and --ignore args take column names

view details

push time in a month

PR merged paulfitz/daff

Clarify that --id and --ignore args take column names

The other tool I was using until I found this (csvdiff) uses column numbers, and it took me a while to figure out that this one was using names. 🙂

+2 -2

1 comment

1 changed file

vergenzt

pr closed time in a month

pull request commentpaulfitz/daff

Clarify that --id and --ignore args take column names

Thanks @vergenzt! Test failure is unrelated, should now be fixed.

vergenzt

comment created time in a month

delete branch paulfitz/daff

delete branch : travis

delete time in a month

push eventpaulfitz/daff

Paul Fitzpatrick

commit sha eadc750cab22cfae58e77b2a680691f572de4f55

mercurial is gone

view details

Paul Fitzpatrick

commit sha fd237277c10d57467eec507ab59c980872a80304

Merge pull request #164 from paulfitz/travis update 3to2 url; mercurial is gone

view details

push time in a month

PR merged paulfitz/daff

update 3to2 url; mercurial is gone

Bitbucket has made some changes that require travis tweaks.

+1 -1

0 comment

1 changed file

paulfitz

pr closed time in a month

PR opened paulfitz/daff

update 3to2 url; mercurial is gone

Bitbucket has made some changes that require travis tweaks.

+1 -1

0 comment

1 changed file

pr created time in a month

create barnchpaulfitz/daff

branch : travis

created branch time in a month

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha 698fd4fc830949ce5124f520991713e9d1cbe10d

add a pikesleyism

view details

push time in a month

startedcorbanbrook/dsp.js

started time in 2 months

startedaudiojs/web-audio-api

started time in 2 months

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha a61416e27275282dea6c408d8067c4f02b53b376

add a pikesleyism

view details

push time in 2 months

push eventpaulfitz/mlsql

Paul Fitzpatrick

commit sha 2f2f9cff35dce24580b06085072b44a8ce17fb54

rat-sql has a decent setup now

view details

push time in 2 months

startedmikub/titanoboa

started time in 2 months

issue commentpaulfitz/daff

Error in daff.js for when running in Deno JavaScript runtime instead of NodeJS

I tried running deno run -A bin/daff.js and fixing up problems ad-hoc, just to assess how much was broken. There were a bunch of trivial problems - code for picking what global object (exports/windows/...) to put the library in was failing - hacking it to use self worked, I'd be interested to know how libraries should behave in deno. Then there were some syntax issues (missing "var" declarations) - easy. But then there were complaints about require is not defined (e.g. require('fs')) and I don't know what to replace that with. As a library, daff doesn't need requires, but as a console tool it does. I'd welcome any advice.

shah

comment created time in 2 months

startedsamizdatco/skia-canvas

started time in 2 months

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha 7144d957b817756b704c3da9bb177774712841d0

add sitemap

view details

push time in 2 months

startedSeb-C/kiss-orm

started time in 2 months

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha 4f0c6bf0535d67fd4ac71f17ae1632f499c21fb3

add a pikesleyism

view details

push time in 2 months

push eventgristlabs/grist-widget

Paul Fitzpatrick

commit sha b9b3fe3bcd3af5a087704ba4d46d7bbef5ccf54f

add exoplanet widget

view details

push time in 2 months

startedandmarti1424/sc-im

started time in 2 months

startedmozilla/moz-sql-parser

started time in 2 months

push eventpaulfitz/mlsql

Paul Fitzpatrick

commit sha 8734ca8d655da13e4c058a1143a617a41f423827

mention photon

view details

push time in 2 months

startedtrailofbits/graphtage

started time in 2 months

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha dc78ddbe38288a477560c02e6ab27a2055dbb60c

add a pikesleyism

view details

push time in 2 months

push eventpaulfitz/catsql

Paul Fitzpatrick

commit sha 6bb279e8ad8305b916e5e0f0c56e9ab385434279

satisfy linter

view details

push time in 2 months

push eventpaulfitz/asql

Paul Fitzpatrick

commit sha 30d5b3db9bd4bcb63e24bf578fa3ed2719d1807c

add a screenshot

view details

push time in 2 months

issue commentpaulfitz/asql

image thread, please ignore

Screen Shot 2020-08-26 at 6 57 44 PM

paulfitz

comment created time in 2 months

issue closedpaulfitz/asql

image thread, please ignore

closed time in 2 months

paulfitz

issue openedpaulfitz/asql

image thread, please ignore

created time in 2 months

push eventpaulfitz/asql

Paul Fitzpatrick

commit sha f393871c922d105fb553e6efcb36f2361ba82499

preserve foreign keys, d'oh

view details

push time in 2 months

push eventpaulfitz/catsql

Paul Fitzpatrick

commit sha b85889f232501b7a6e7c6b7bcb05c090effeaf8c

decimal remains problematic

view details

Paul Fitzpatrick

commit sha 3737d22bae2a4415237d098500c2690ff2920bd4

make some attempt to preserve foreign keys when saving to sqlite

view details

push time in 2 months

push eventpaulfitz/mlsql

Paul Fitzpatrick

commit sha 2be6631214c5d160d5e02fc5af926933b5955dc4

mention asql

view details

push time in 2 months

push eventgristlabs/grist-widget

Paul Fitzpatrick

commit sha 370b6138894111b472d1817fda213943dddd9c48

add a minimal front page, and explicitly disable jekyll

view details

push time in 2 months

push eventgristlabs/grist-widget

Paul Fitzpatrick

commit sha 26f30514fd206fcb251fd2363947799e8a30c447

pluralize variable name

view details

push time in 2 months

MemberEvent

push eventgristlabs/grist-widget

Paul Fitzpatrick

commit sha 1bd4b2e9ab1c09fced13580092b1a1b6d9b33830

add inspect onRecord.html/onRecords.html to support upcoming documentation

view details

push time in 2 months

push eventgristlabs/grist-widget

Paul Fitzpatrick

commit sha edebc7c94d9acdd4d9336bf831df7adcacb6d674

update grist library location

view details

push time in 2 months

push eventgristlabs/grist-widget

Paul Fitzpatrick

commit sha ca43e58b9741c810df9a9c3056cadd212b97771b

add first pass at invoice widget

view details

push time in 2 months

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha c701f5770a198ae8b16d6c389899aae8c44bb184

add a pikesleyism

view details

push time in 2 months

startedmetabase/metabase

started time in 2 months

startedkarpathy/minGPT

started time in 2 months

push eventgristlabs/grist-widget

Paul Fitzpatrick

commit sha 77b8b577e73f7655300538a6d957e5d9eb19f793

add placeholder front page

view details

push time in 2 months

create barnchgristlabs/grist-widget

branch : master

created branch time in 2 months

created repositorygristlabs/grist-widget

A repository of grist custom widgets that have no back-end requirements.

created time in 2 months

push eventpaulfitz/asql

Paul Fitzpatrick

commit sha 8ddb7d94bc49ebcd51db5ac0357d61f6258ed04a

remove test code; add readme; nudge for api

view details

Paul Fitzpatrick

commit sha 777a27045fcb0c0271bffd75901bc8cdf7aaa4bd

bump version

view details

Paul Fitzpatrick

commit sha b146dd9094102ba653ed2e69230baa4b52ce5b97

add readme correctly to package

view details

push time in 2 months

push eventpaulfitz/catsql

Paul Fitzpatrick

commit sha 1b141baab5f182c99debfa76a6a927163b2c0b6e

deal better with types in csv

view details

Paul Fitzpatrick

commit sha b6c7c786556570a79ccc3298fcce1b82623ada79

fix requirement syntax

view details

push time in 2 months

push eventpaulfitz/asql

Paul Fitzpatrick

commit sha c5a2169c8e6bfc5ff36aabfe9ab06e17217a833b

try to pull all the main steps together

view details

push time in 2 months

push eventpaulfitz/paulfitz.github.io

Paul Fitzpatrick

commit sha 7f9d3356f63117b819989ba91f1d791fd62f2706

add a pikesleyism

view details

push time in 3 months

Pull request review commentgristlabs/grist-api

Support attaching files, and some small cleanup

 export class GristDocAPI {     this._server = options.server || 'https://api.getgrist.com';     this._apiKey = options.apiKey || null;     this._chunkSize = options.chunkSize || 500;-    const match = /^(https?:.*)\/doc\/([^\/#]+)/.exec(docUrlOrId);+    const match = /^(https?:.*)\/doc\/([^\/?#]+)/.exec(docUrlOrId);

This pattern won't match new-style links. If the first /part/ of the url path is longer than some threshold (looks to be 12 characters), it can be assumed to be a urlId.

dsagal

comment created time in 3 months

push eventpaulfitz/grist-widget

Paul Fitzpatrick

commit sha 0ed5890ed0ca5766f48f0f2364074484a171e28e

fix location of print button

view details

push time in 3 months

push eventpaulfitz/grist-widget

Paul Fitzpatrick

commit sha 9d34e61551d4b5192dd83d5120c459aacac7d198

start offering better feedback on what is needed from document

view details

push time in 3 months

push eventpaulfitz/grist-widget

Paul Fitzpatrick

commit sha 4c20a409bfadde5be0c16041d02adf7d82564d26

add a choice of styles

view details

push time in 3 months

push eventpaulfitz/grist-widget

Paul Fitzpatrick

commit sha 46ea810fe63dc0b171b0e1d42a4a1fe66845f51b

move js to separate file

view details

push time in 3 months

push eventpaulfitz/grist-widget

Paul Fitzpatrick

commit sha d673507a85fd2a1d32ad7a43b431d8a2bbcb7d14

add a print button

view details

push time in 3 months

push eventpaulfitz/grist-widget

Paul Fitzpatrick

commit sha 8a4ba740d962b67038d91612da1fbf598570265c

add payment info

view details

push time in 3 months

push eventpaulfitz/grist-widget

Paul Fitzpatrick

commit sha 1c99005c129d83ab5c56c03c94d9f0d5418e2b07

first pass at invoices

view details

push time in 3 months

push eventpaulfitz/catsql

Paul Fitzpatrick

commit sha 1e9aab130fcdb934e1999fbea687b4d4ad720fe5

exclude json from automatic sorts

view details

push time in 3 months

push eventpaulfitz/catsql

Paul Fitzpatrick

commit sha 03ec15c2eb17712ab8fee422a45da61e64261c6f

revive csv wrapper

view details

Paul Fitzpatrick

commit sha badb395423228e8fd290fa363917ad061538f9db

placate linter, fix skip print

view details

push time in 3 months

push eventpaulfitz/catsql

Paul Fitzpatrick

commit sha 04345b31d227a90ca801d9819571134bb04d6c4f

fix copy of empty table

view details

push time in 3 months

issue closedpaulfitz/daff

How to get the difference using GIT diff in a browser?

Hi!

I'm looking a way to display the difference between tables using GIT diff in a browser. Is it possible?

Thanks!

closed time in 3 months

bushev

issue commentpaulfitz/daff

How to get the difference using GIT diff in a browser?

Thanks for testing @frogger72. How about daff version 1.3.46?

bushev

comment created time in 3 months

created tagpaulfitz/daff

tagv1.3.46

align and compare tables

created time in 3 months

push eventpaulfitz/daff

Paul Fitzpatrick

commit sha 5886928aa85bc4c92cd7ad365b16ca19f05bf74e

1.3.46

view details

push time in 3 months

delete branch paulfitz/daff

delete branch : python_www_utf8

delete time in 3 months

push eventpaulfitz/daff

Paul Fitzpatrick

commit sha a3e2a67694ac04f7fc9837f297b8b8b8df69f3e8

encode as utf-8 when sending to browser in python

view details

Paul Fitzpatrick

commit sha 89bf953bf45b38ac1de53f55e18eb7522570095e

Merge pull request #159 from paulfitz/python_www_utf8 encode as utf-8 when sending to browser in python

view details

push time in 3 months

more