Giter Site home page Giter Site logo

camel's People

Contributors

bdesham avatar benelsen avatar chrisfinazzo avatar cliss avatar kdmurray avatar ksgant avatar marcovega avatar maxbucknell avatar sergeifilippov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

camel's Issues

Multiple declarations of `externalFilenameForFile()`

Hi, in camel.js, it looks like the function externalFilenameForFile() is declared twice, first with a single parameter (file), and then again with two parameters (file and request).

Function overloading like this isn't allowed in JS. Instead, the second function declaration just clobbers the first one. Thus, all calls to externalFilenameForFile() go straight to the two-argument version. (In fact, if the functions were declared in the opposite order, the single-argument version would end up calling itself over and over.)

RSS Caching Can Return Different Hostnames

If a request comes in after the RSS cache has expired on an unexpected hostname, it can seed that hostname in the cache and return it with requests to the preferred hostname. This appears to only affect the RSS feed because it is returning fully qualified URLs.

Example:

camel on  master
➜ curl http://linode.liss.test/rss | grep linode
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1706    0  1706    0     0   171k      0 --:--:-- --:--:-- --:--:--  416k
]]></description><link>http://www.vt.edu/</link><guid isPermaLink="false">http://linode.liss.test/2015/2/6/sample-link-post</guid><dc:creator><![CDATA[Your Name]]></dc:creator><pubDate>Fri, 06 Feb 2015 22:00:00 GMT</pubDate></item><item><title><![CDATA[Test Post]]></title><description><![CDATA[<p>This is a <em>test post</em> entitled “Test Post”.</p>
]]></description><link>http://linode.liss.test/2014/5/1/sample-post</link><guid isPermaLink="false">http://linode.liss.test/2014/5/1/sample-post</guid><dc:creator><![CDATA[Your Name]]></dc:creator><pubDate>Fri, 02 May 2014 02:50:00 GMT</pubDate></item></channel></rss>

camel on  master
➜ curl http://www.liss.test/rss | grep linode
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1706    0  1706    0     0   161k      0 --:--:-- --:--:-- --:--:--  333k
]]></description><link>http://www.vt.edu/</link><guid isPermaLink="false">http://linode.liss.test/2015/2/6/sample-link-post</guid><dc:creator><![CDATA[Your Name]]></dc:creator><pubDate>Fri, 06 Feb 2015 22:00:00 GMT</pubDate></item><item><title><![CDATA[Test Post]]></title><description><![CDATA[<p>This is a <em>test post</em> entitled “Test Post”.</p>
]]></description><link>http://linode.liss.test/2014/5/1/sample-post</link><guid isPermaLink="false">http://linode.liss.test/2014/5/1/sample-post</guid><dc:creator><![CDATA[Your Name]]></dc:creator><pubDate>Fri, 02 May 2014 02:50:00 GMT</pubDate></item></channel></rss>

Screenshot 2023-02-22 at 09 15 41

This can result in feed readers picking up all feed items as new because the GUIDs change. (Origin: https://fosstodon.org/@drdrang/109905798081310673)

Improve homepage URLs

Rather than having the homepage use query strings for pages, why not a new route?

For example, instead of '/?p=3', why not '/page/3'?

Too-long title causes auto-tweet to fail & Camel to die

If a post is created with a really long title, Twitter will balk at the auto-tweet because it's too long, and that will take Camel down due to this line.

The auto-tweeter should be changed to:

  • Consider how long a link is once shortened by Twitter
  • Consider how long the suffix is (right now, \n\n)
  • Automatically truncate long titles if they're over the computed maximum length.

Adding Tags to Camel

Truly, less is more.

I assume this is why Camel is the way it is—fast [first], simple, and relatively straight-forward.

I dig that.

I wouldn't want it any other way.

And yet.

Tags

Yes, those.

I know what you're thinking (you're thinking, "Eh").

I can understand.

Because less is more.

But here's the thing:

Camel needs could use tags. Tags are useful and helpful when used like this, not necessarily like this. Tags don't have to be associated with their oft-icky implementation.

Roger Stringer's fork has tags, but his is based on his own custom variables that make cribbing to your "Standard Camel" fork somewhat non-trivial.


Basic support would entail:

  1. Basic metadata support for "Tags" (or "Keywords"—whatever you want to call it), be that via the traditional metadataMarker@@—or via the newest metadata format in 1.5.3, e.g., Tags:
  2. Support for /tags and /tags/tag slugs

`npm start` fails under Homebrew

Not sure if this is a real issue, or I may have missed a step configuring something, but while node ./camel.js starts a local server on port 5000, npm start implodes.

screen shot 2016-02-08 at 6 10 35 pm

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.