Code Monkey home page Code Monkey logo

piggydb's Introduction

piggydb's People

Contributors

bitdeli-chef avatar daisuke-morita avatar marubinotto 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

piggydb's Issues

What is happening

WARN 2014/07/06 16:06:42 FAILED org.eclipse.jetty.server.nio.SelectChannelConnector$1@104e3f1: java.io.IOException: Unable to establish loopback connection
WARN 2014/07/06 16:06:42 FAILED [email protected]:8080: java.io.IOException: Unable to establish loopback connection
WARN 2014/07/06 16:06:42 FAILED org.eclipse.jetty.server.Server@217e66: java.io.IOException: Unable to establish loopback connection
ERROR 2014/07/06 16:06:46 java.io.IOException: Unable to establish loopback connection
java.io.IOException: Unable to establish loopback connection
at sun.nio.ch.PipeImpl$Initializer.run(Unknown Source)
at sun.nio.ch.PipeImpl$Initializer.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.nio.ch.PipeImpl.(Unknown Source)
at sun.nio.ch.SelectorProviderImpl.openPipe(Unknown Source)
at java.nio.channels.Pipe.open(Unknown Source)
at sun.nio.ch.WindowsSelectorImpl.(Unknown Source)
at sun.nio.ch.WindowsSelectorProvider.openSelector(Unknown Source)
at java.nio.channels.Selector.open(Unknown Source)
at org.eclipse.jetty.io.nio.SelectorManager$SelectSet.(SelectorManager.java:331)
at org.eclipse.jetty.io.nio.SelectorManager.doStart(SelectorManager.java:205)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:288)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.Server.doStart(Server.java:241)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at marubinotto.piggydb.standalone.PiggydbServer.launch(PiggydbServer.java:83)
at marubinotto.piggydb.standalone.PiggydbServer.main(PiggydbServer.java:48)
Caused by: java.net.SocketException: Invalid argument: connect
at sun.nio.ch.Net.connect0(Native Method)
at sun.nio.ch.Net.connect(Unknown Source)
at sun.nio.ch.Net.connect(Unknown Source)
at sun.nio.ch.SocketChannelImpl.connect(Unknown Source)
at java.nio.channels.SocketChannel.open(Unknown Source)

Introduce tag aliases

Given a have a tag named "HyperText Markup Language"
When I mention "HTML" in a fragment
Then it should be linked to the tag named "HyperText Markup Language"

I have quite some cases where I have tags that are often referred to by abbreviations but sometimes also by its no abbreviated form.

My current solution is to create the abbreviated form as child of the non abbreviated but I would prefer if I just could add the abbreviation as an alias.

Add another TeX math rendering engine : KaTeX

I have just run into Piggydb for several days, and I wish I have got to know it several years earlier. Piggydb is working as exact what I was looking for. I have even written a bare app with go the last year, but that is still a long way from what I expected. Thank you very much for your creation.

I use piggydb to manage some knowledge points or notes when I am reading papers and books. And a lot of TeX math is involved. I certainly want the TeX math rendering engine works correctly and fast.

Piggydb is now using mathjax as the TeX math rendering engine.
However, a new rendering engine KaTeX developed by the Khan Academy.
The KaTeX renders TeX math much faster than mathjax, though KaTeX can still not handle as much type of expressions as mathjax.

So, I wonder if it is possible to add KaTeX as an additional rendering engine to finally enable the users to switch between the engines.

Search form error with unicode character in linux

Hello.
I've deployed piggydb with tomcat 8.5.3 on alpine linux 3.9. Everything is fine but some problem on search text form. When I input unicode characters in search form, in post result pages the keyword was replaced by question marks.
Followed many instructions I've add utf-8 encoding support in tomcat conf files, server.xml and web.xml, as bellow.

server.xml:
"<connector ..... URIEncoding="UTF-8" .... >"

web.xml
uncomment " setCharacterEncodingFilter ... " section and
"setCharacterEncodingFilter ... " section.

But with no luck, when I input unicode characters in search form, the result page still got question mark which should be the unicode characters.
Could anyone help me, please?

Keyboard friendly UI

  • When the login page loads the focus should be on username
  • When creating a new node, the focus should be in the title / body
  • There should be keyboard shortcuts to most operations

Can't create new fragments in Firefox (Illegal Character in jquery-1.7.2.min.js)

Hi,

when loading http://localhost:8080/ in Firefox I got the following error in Firebug:

SyntaxError: illegal character
http://localhost:8080/js/vendor/jquery-1.7.2.min.js
Line 3

Clicking on the Create a new fragment or Add a file icons give this error

TypeError: jQuery.blockUI is not a function
http://localhost:8080/js/piggydb.util.js?6.3
Line 100

As a result, these functionalities don't work.

I'm using piggydb-standalone-6.3.zip on Windows 7 and Firefox 15.0.1

Regards,
Giacomo

Piggy-DB saving files in different drive

Hello,

I would like to report what appears to be an issue in Piggy-DB,

I have installed Piggy-DB in a server with a Tomcat-Server and all seems to be working fine, except for one thing.

I have configured the piggy-db database to be stored in the E:\ drive of the server and this is working fine.

In this folder:

E:\piggydb\piggydb

I can find the following files (using "Copy as path"):

"E:\piggydb\piggydb\piggydb.trace.db"
"E:\piggydb\piggydb\piggydb.h2.db"
"E:\piggydb\piggydb\piggydb.lock.db"

When now adding file-fragments I would expect attached files to be stored in this folder:

E:\piggydb\piggydb\piggydb-files

But I find the files attached to the file-fragments stored in this folder instead:

C:\piggydb\piggydb\piggydb-files

For example I can find the following files(using "Copy as path"):

"C:\piggydb\piggydb\piggydb-files\7.jpg"
"C:\piggydb\piggydb\piggydb-files\10.jpg"
"C:\piggydb\piggydb\piggydb-files\25.pdf"
"C:\piggydb\piggydb\piggydb-files\26.jpg"
"C:\piggydb\piggydb\piggydb-files\27.jpg"
...

The content of my application.properties file:

piggydb.enableClientAddressAuth=false
piggydb.enableUserAgentAuth=false

piggydb.enableAnonymous=true
piggydb.entity.changeableOnlyForCreator=false

piggydb.fragmentsView.defaultScale=

piggydb.database.prefix=file://E:/piggydb/piggydb
piggydb.database.name=
jdbc.username=sa
jdbc.password=

Thank you for your time!

Multiuser / social network features

This is probably not an immediate feature request and I'm sure you have thought about it already, but I would like to know some kind of an estimate -- how hard is it, how much work would it be, how deep would the changes need to be etc.

I would like to use Piggydb collaboratively for example with my students. In one Piggydb instance all of us would have separate user accounts. At the start (after logging in...) everyone would only see their fragments. But it would be possible to switch to a different user's perspective and see his fragments. And it would be possible to select a fragment and "add it" to my perspective, and create relationships from it to other fragments I see.

The use case is that I'm teaching a course and I would like every student to create their own "concept map" in piggydb, but I would like to bootstrap them by giving them something to start with (my map). So after the first lesson I would construct what was taught and they could take from it, and add anything to it. After the second lesson, they would be able to take new fragments from me and again add anything to it. And continually they could also share fragments with each other.

Implementation-wise I don't think it is far-fetched. Users are already present in the system; I don't know how fragment metadata looks like but it seems to me that you would only have to add a field containing a list of users that want to display this fragment in their "perspective". As for relationships and tags, while viewing a fragment a user should only be shown those that are enabled for his perspective; e.g. if a student creates a fragment and connects it to my fragment (or assigns his tag onto my fragment), by default I wouldn't see that.

I realize this is rudimental and is based on trust, but it would already be hugely beneficial to all the use cases I have in mind. Even now when I share a piggydb with my fianceé this functionality would be immensely helpful.

Problems that I see:

  • if a student creates a relationship between two of my fragments, I would see it (which is probably undesirable). Same with tags.
  • a student is either able to edit my fragment (possibly dangerous) or doesn't have a good way to modify it. Only options left for him to add his notes are
    1. add a new fragment and connect it;
    2. clone my fragment (thus losing whatever work/corrections/... I do on it in the future).

Fixing these would require having metadata on relationships which is probably not possible yet. (And more generally, some well thought-out access control system in place.)

Mathjax load from cdn makes Piggydb unusable without internet connetction

The Mathjax JS library is loaded via CDN. This makes Piggydb (6.18-supporters) unusable without a connection to the internet.

I suggest to either include Mathjax to the package or check if it is loaded before using it.

GET http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML net::ERR_INTERNET_DISCONNECTED fragment.htm:60
Uncaught ReferenceError: MathJax is not defined piggydb.widget.Fragment.js?6.18-supporters:41
Uncaught ReferenceError: MathJax is not defined piggydb.widget.Fragment.js?6.18-supporters:38

Support local linking of fragments

Using version 6.18, I have two options to link two fragments with each other. One is by adding a relationship an the other is to insert a link into the fragment text.
If I do the later, I only can add absolute links. While this is fine for linking to external resources, this might become a problem for linking to local resources.

Troubles might be when you are forced to switch switch port or if you move your Piggydb from your local machine to a sever wich changes the url. In that case you will end up with broken links in your db.

I request that linking text also supports linking to fragments as well as tags.

Example:

[42 This links to fragment with the id 42]
[Inceptos This links to the tag named Inceptos]

How #trash tag works?

I've started a new DB as a knowledge base with coworkers.
When loading fragments, i've noticed that embedded images also appear at the bottom of the fragment, making it difficult sometimes to read and understand it (and it also makes a mess on main view, with a lot of images floating around).
So, it came to me, that i could use the #trash tag. When I use that tag on embedded images, they still appear on the fragment, but they disappear at the bottom (and main view).
That worked just fine, until a week ago, when i've noticed a lot of embedded images missing from fragments. The files were deleted from the system folder where they were (C:\Windows\SysWOW64\config\systemprofile\piggydb).
So, the question is, there is another way to "hide" images from the main view?
And also, does the #trash tag deletes files after a while?

How do I delete file fragments?

I attached a file and then I deleted the reference to it in its parent text fragment. It still exists on disk.

How do I find and delete this orphaned file fragment? Is there a command to delete orphans? Do orphans get garbage collected automatically?

I am using Piggydb verseion 7.0

Translation mechanism ?

Searching for language files or even with Google, I can't find how translation is done. Only English and Korean translation are mentioned. Nothing in documentation or installation...

Any pointers ?

The fragment "menu" (open, edit, bookmark, etc) doesn't appear on linux ubuntu

See the following log:

[Winstone 2014/07/09 23:17:12] - Beginning extraction from war file
[Winstone 2014/07/09 23:17:12] - WARNING: The Servlet 2.4/2.5 spec XSD was unavailable inside the winstone classpath. Will be retrieved from the web if required (slow)
[Winstone 2014/07/09 23:17:13] - XML Error (Line 5): schema_reference.4: Failed to read schema document 'http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not xsd:schema.
[Winstone 2014/07/09 23:17:13] - XML Error (Line 5): schema_reference.4: Failed to read schema document 'http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not xsd:schema.
[Winstone 2014/07/09 23:17:13] - XML Error (Line 2): Document is invalid: no grammar found.
[Winstone 2014/07/09 23:17:13] - XML Error (Line 2): Document root element "web-app", must match DOCTYPE root "null".
[webapp 2014/07/09 23:17:13] - Initializing Spring root WebApplicationContext
[Winstone 2014/07/09 23:17:24] - Listener winstone.ajp13.Ajp13Listener not found / disabled - ignoring
[Winstone 2014/07/09 23:17:24] - Listener winstone.ssl.HttpsListener not found / disabled - ignoring
[Winstone 2014/07/09 23:17:24] - Winstone Servlet Engine v0.9.10 running: controlPort=disabled
[Winstone 2014/07/09 23:17:24] - HTTP Listener started: port=8080

The database is readable but the "menu bar" with "drag and drop", "open as document", etc doesn't appear.

Full text search is unpredictable [bug]

I noticed the search only matches full words. (I tried searching piggydb.jp/en for formatting help and formatt (note the double T) did not yield any results, but formatting did.) This way I can only find fragments whose wording I can exactly remember, which is usually not the case.

Edit: I'm not sure what is going on, because format matches information, but not formatting. Now it seems like a bug, not a missing feature.

Tags containing umlauts do not work as expected

Given I have a tag containing an umlaut
When I visit the tag page for that tag
Then I do not see any fragments tagged with that tag on the right column

Given I have a fragment
And that fragment has a tag containing an umlaut mentioned in its body
Then the tag with umlaut does not get linked to the tag

My expectation is that tagging works regardless if it contains umlauts.

List of regular used umlauts in the german language: ä, ö, ü.
Other languages may also use: ë, ï.

Issue detected with:

Piggydb: 6.18-supporters
Tomcat: 8.0.9 
Java:
  version: 1.7.0_45
  vendor: Oracle Corporation
  directory: /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/jre
Memory: free 71.69 MByte / total 448.50 MByte / max 1.78 GByte
Database version: H2 1.2.145 (2010-11-02)

Search for any character sequence [feature]

I need to rewrite content from a wiki in piggydb and the links are in square brackets, so I tried searchgin fo '[' but non-alphanumeric characters seem to be ignored by search. It would be really helpful if piggydb could find any character sequence.

[UX] Icons too small - hard to click

Although I like famfamfam icons, but maybe because of their small size, the UI is hard to navigate (it is hard to position your cursor to the desired feature).

missing "trash completely"

I installed piggydb v7 on a server for the first tests and found a few problems:

  1. I miss the button "Delete all fragments in this trash completely" in the #trash view. So I can not delete fragments completely!
  2. I miss the calendar. Is it correct that this is no longer available?
  3. on top left, I have only the text-link 'icon' instead of the favicon-icon (but for me not fatal)
    I would also like to use piggydb as a journal. Is it possible to sort fragments to a journal-date (not the create-date)?

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.