Giter Site home page Giter Site logo

beholder's People

Contributors

agluszyk avatar bartosz822 avatar fazzou avatar hoszyk avatar jakubsroka avatar kwestor avatar liosedhel avatar mkljakubowski avatar mszturo avatar odisseus avatar pbatko avatar romanowski avatar szebniok avatar tgodzik 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

Watchers

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

beholder's Issues

Collectors dsl

Currently we have only one poor collector. We need to create dsl for creating and chaining collectors.

Filtering by ignored json field

When filtering by json field that is ignored doFilter endpoint returns null instead of list of entities not filtered by this value.

Create function based dsl

Enrich existing filter dsl to accept one function style dsl e.g.:

fromQuery(myQuery){
  case (a, b) => "ala" from a.ala and "ola" from o.ola
}

View are still in Beholder 1.0

Views are written still in spirit of 1.0 beholder.

We need to make them more DBIO-like, and remove unicorn dependencies (or extract to one place)

Crating more lightway dsl will be also benefical.

Migrate to Play 2.4

Migrate to Play 2.4
Fix tests
Add scoverage plugin
Write tests to achieve high coverage

Split beholder into smaller projects

Beholder is now single jar. We need to split it into set of smaller ones with different dependencies. My proposal:

beholder-core - depends only on slick
beholder-json (beholder-play) - depends on core and play
beholder-unicorn - all unicorn-ed end points

Disjunction filtering based on enum values

Is it possible to filter data using many enum values ? E. g. I have enum:

Currency {
 PLN, 
 USD,
 EUR
}

And I want to have all unique results which have type PLN or USD. This feature could be also added to others filterable fields.

Date range filtering

Date range should be closed [a,b] not open (a,b). Now for range (a,a) result is empty even if there is a row with a date.

Create more tests tests for Filters

We need to create tests for:

  • table based filers
  • another dsl forms
  • test deeper nested joins with name clashes, alternatives and ranges
  • enums
  • negative tests

All should be done as extensions to exisiting tests (enums will be tested for all dsl etc.)

Add new filter method to return total entities number

I am writing table with pagination. For best possible performance I am taking only some records from database using FilterDefinition.take and FilterDefinition.skip fields. But I need also total entities number on particular filter query (without taking FilterDefinition.take and FilterDefinition.skip in account) to compute proper number of pages in my table. I need method like that (pseudo code):

type TotalEntitiesNumber = Int
def filterWithTotalEntitiesNumber(data: FilterDefinition[FilteredData]): (Seq[Entity], TotalEntitiesNumber)

Create more tests for json filters

We need to create tests for (see ForamtterTestSuire.scala)

  • ranges, and alternatives for all fields
  • nested filters
  • definition tests
  • create tests for json controllers

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.