Giter Site home page Giter Site logo

Comments (13)

aendra-rininsland avatar aendra-rininsland commented on July 20, 2024

I've noticed that too, possibly has to do with the PR I did awhile back. Will take a look on Wednesday when I'm back at work.

from tabletop.

danswick avatar danswick commented on July 20, 2024

Just ran into the same issue. Passing option prettyColumnNames: false fixes the loop error, but obviously breaks functions relying on specific column names.

from tabletop.

aendra-rininsland avatar aendra-rininsland commented on July 20, 2024

Apologies for the huge delay in getting back to this; I'll be doing some stuff with Flatware this weekend and will try to take a look.

from tabletop.

danswick avatar danswick commented on July 20, 2024

@Aendrew - it looks like the latest version of flatware does not sync using pretty column names (the data saved on AWS has underscores stripped and all column names set to lowercase). Could this have something to do with the issue? It also seems that fetchPrettyColumns is never actually calling loadPrettyColumns. Could it be that requestData() is not handing off the proper object to the callback function?

Please excuse me if these are obvious questions and thanks for looking into this!

from tabletop.

aendra-rininsland avatar aendra-rininsland commented on July 20, 2024

@danswick Could very well be. TBH, it seems like an issue more with the new version of Sheets than anything; all my change did was tell the app to try the updated Sheets path based on env var. Have you tried setting FLATWARE_USE_OLD_SHEETS=true (defaults to false)?

from tabletop.

danswick avatar danswick commented on July 20, 2024

@Aendrew Just gave that a shot with no luck. Still getting non-pretty column names and the endless loop.

Regular old tabletop is working fine, including properly formatted column names, but column names are 'de-prettified' once they go through flatware.

Thanks again!

from tabletop.

aendra-rininsland avatar aendra-rininsland commented on July 20, 2024

Just tried a brand-new install of Flatware using 1.4.0 — confirming prettyColumns is totally broken. I've never really used that option, so not sure how to fix it; I retract what I said earlier, seems more like an issue with Tabletop itself.

from tabletop.

aendra-rininsland avatar aendra-rininsland commented on July 20, 2024

Update: I get the following error when I try to replicate the issue via the NodeJS REPL:

TypeError: Cannot read property 'entry' of undefined
    at Object.Tabletop.loadSheets (/Users/aendrew/Sites/tabletop/src/tabletop.js:308:34)
    at Request._callback (/Users/aendrew/Sites/tabletop/src/tabletop.js:248:18)
    at Request.self.callback (/Users/aendrew/Sites/tabletop/node_modules/request/index.js:142:22)
    at Request.emit (events.js:110:17)
    at Request.<anonymous> (/Users/aendrew/Sites/tabletop/node_modules/request/index.js:856:14)
    at Request.emit (events.js:129:20)
    at IncomingMessage.<anonymous> (/Users/aendrew/Sites/tabletop/node_modules/request/index.js:808:12)
    at IncomingMessage.emit (events.js:129:20)
    at _stream_readable.js:908:16


console.log'ing out the function argument returns:

<?xml version="1.0" encoding="UTF-8"?>\n<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>FF1D335488BA3641</RequestId><HostId>S4ILNAhC75PlHcHNDzhWJ5LPh2mpIt1Qmj8gOo21Y5NEXlPvtZwb1ysEXLiPJKVvXTcVkcQ8Kc4=</HostId></Error>


Adding a "Everyone" view permission changes that to:

<?xml version="1.0" encoding="UTF-8"?>\n<Error><Code>NoSuchKey</Code><Message>The specified key does not exist.</Message><Key>feeds/worksheets/1PCeMMB6ty9KGbnvCwobSZOGv2rJ0z9-qt6JA5TBzodU/public/basic</Key><RequestId>9992E64FE86D64ED</RequestId><HostId>YxBcxymu0B2sw+4Gu4gKh6hplad7UzQXk3OvqouaXuvvMLbGMMZNxwbkoJbPldfqTiE40/OrvFQ=</HostId></Error>

Nevermind; it seems the "proxy" option just does not work in NodeJS. I get the same errors regardless of whether prettyColumns is enabled or not.

Update2: Seems the root of the issue is like @danswick diagnosed — loadPrettyColumns isn't loading. To backtrack for like the third time — it seems the issue is specifically with Flatware.

from tabletop.

aendra-rininsland avatar aendra-rininsland commented on July 20, 2024

^^ Please see the above issue on Flatware. According to the Tabletop readme, an extra request is necessary to get the pretty column names, and I'm pretty sure that Flatware doesn't do that yet.

from tabletop.

danswick avatar danswick commented on July 20, 2024

Oh wow, thanks for digging so deep into this, @Aendrew. Your diagnosis makes perfect sense.

from tabletop.

jsoma avatar jsoma commented on July 20, 2024

Thanks times a million for all of that @Aendrew! I'm taking a look now, hopefully we can get this all sorted out.

from tabletop.

jsoma avatar jsoma commented on July 20, 2024

As of this brand-new moment, prettyColumnNames will default to false if you're using a proxy (although you can override it). While we were at it, I also updated Flatware to use TLS instead of SSLv3, which Amazon has deprecated, so you might want to update even if you're passing in false.

from tabletop.

aendra-rininsland avatar aendra-rininsland commented on July 20, 2024

Good to know! Thanks for the new release!

from tabletop.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.