GithubHelp home page GithubHelp logo

josh-development / core Goto Github PK

View Code? Open in Web Editor NEW
73.0 4.0 12.0 13.58 MB

Javascript Object Storage Helper

License: Apache License 2.0

TypeScript 100.00%
node persistent-storage typescript hacktoberfest

core's People

Contributors

aguynamedjens avatar c0reme avatar chicken avatar codedipper avatar dan-online avatar dependabot[bot] avatar eslachance avatar lukeacat avatar realshadownova avatar renovate-bot avatar renovate[bot] avatar thetayloredman avatar wilsonthewolf avatar zytekaron 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

Watchers

 avatar  avatar  avatar  avatar

core's Issues

docs(JoshProvider): add method descriptions

Currently, there is a lack of documentation and written standards for a JoshProvider. If you are interested in contributing to this, there is some old documentation from #51 that you can use as an example. Please make sure to ask questions as these may have changed.

ci(turbo): Cache turbo directory for speed in workflows

Using this:

- name: Turbo Cache
  uses: actions/cache@v2
  with:
    path: .turbo
    key: turbo-${{ github.job }}-${{ github.ref_name }}-${{ github.sha }}
    restore-keys: |
      turbo-${{ github.job }}-${{ github.ref_name }}-

and making turbo calls this:

yarn build --cache-dir ./.turbo

Ensuring the data doesn't work if the data already exists but the object keys have changed in the template data

I am using josh mongo
For example I have this code

//const myJosh = new Josh(blah blah blah);

const template = {
    foo: 'bar', 
    bar: {
        first: 'foo',
    }
}

//Setting the data

let data = await myJosh.ensure('jaguar',template);

await myJosh.set('jaguar.bar.last','weirdValue');

//now lets edit the template

template.bar.second = 'i_like_coading';
template.bat.third = 'anotherOne';

//now if we ensure the value... the new keys in the template object won't get reflected

let seconddata = await myJosh.ensure('jaguar',template);

//now if we log the data the new keys won't be reflected


console.log(seconddata);

/*
{
    foo: 'bar', 
    bar: {
        first: 'foo',
        last: 'weirdValue'
    }
}
*/

//so this is the issue
//Like enmap in this too the new values should be reflected

This is actually an enhancement

Josh Providers Checks

This discussion originally started in the discord server.
Right now JOSH checks if a value exists in the get method (and probably more) using has. However, in a network-based solution (such as the HTTP, or MongoDB providers) it takes longer to do requests. Let's say it takes 100ms to make a request, and you have to make a request for both has and get. This would take you 200ms to get this data.
Now let's say that the server already does this check on the get method. Then not only do you do a redundant check and its costing time.
The providers can easily throw this check in, and, this allows more adaptivity in the future.

Question: How to change the collection with mongodb?

Is there an existing issue or pull request for this?

  • I have searched the existing issues and pull requests

Feature description

Question: How to change the collection with mongodb?

Desired solution

Question: How to change the collection with mongodb?

Alternatives considered

Question: How to change the collection with mongodb?

Additional context

No response

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Ignored or Blocked

These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

Detected dependencies

github-actions
.github/workflows/auto-deprecate.yml
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/setup-node v4@60edb5dd545a775178f52524783378180af0d1f8
.github/workflows/codeql-analysis.yml
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • github/codeql-action v3@d39d31e687223d841ef683f52467bd88e9b21c14
  • github/codeql-action v3@d39d31e687223d841ef683f52467bd88e9b21c14
  • github/codeql-action v3@d39d31e687223d841ef683f52467bd88e9b21c14
.github/workflows/continuous-delivery.yml
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
.github/workflows/continuous-integration.yml
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/setup-node v4@60edb5dd545a775178f52524783378180af0d1f8
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/setup-node v4@60edb5dd545a775178f52524783378180af0d1f8
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/setup-node v4@60edb5dd545a775178f52524783378180af0d1f8
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/setup-node v4@60edb5dd545a775178f52524783378180af0d1f8
  • actions/upload-artifact v4@65462800fd760344b1a7b4382951275a0abb4808
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/download-artifact v4@65a9edc5881444af0b9093a5e628f2fe47ea3b2e
  • codecov/codecov-action v4@5ecb98a3c6b747ed38dc09f787459979aebb39be
.github/workflows/deprecate-on-merge.yml
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
.github/workflows/documentation.yml
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/upload-artifact v4@65462800fd760344b1a7b4382951275a0abb4808
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • actions/setup-node v4@60edb5dd545a775178f52524783378180af0d1f8
  • actions/download-artifact v4@65a9edc5881444af0b9093a5e628f2fe47ea3b2e
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
.github/workflows/labelssync.yml
  • actions/checkout v4@0ad4b8fadaa221de15dcec353f45205ec38ea70b
  • crazy-max/ghaction-github-labeler v5@de749cf181958193cb7debf1a9c5bb28922f3e1b
npm
package.json
  • @joshdb/auto-ensure 2.0.0-next.7b68fa9.0
  • @joshdb/map 2.0.0-next.00a4b62.0
  • @joshdb/provider 2.0.0-next.b88aca0.0
  • @sapphire/utilities ^3.15.3
  • @commitlint/cli ^19.3.0
  • @commitlint/config-conventional ^19.2.2
  • @favware/cliff-jumper ^3.0.3
  • @favware/npm-deprecate ^1.0.7
  • @joshdb/eslint-config 2.0.0-next.b88aca0.0
  • @joshdb/prettier-config 2.0.0-next.b88aca0.0
  • @joshdb/ts-config 2.0.0-next.b88aca0.0
  • @types/node ^20.12.8
  • @typescript-eslint/eslint-plugin ^7.8.0
  • @typescript-eslint/parser ^7.8.0
  • @vitest/coverage-v8 ^1.6.0
  • esbuild-plugin-polyfill-node ^0.3.0
  • eslint ^8.57.0
  • eslint-config-prettier ^9.1.0
  • eslint-plugin-prettier ^5.1.3
  • husky ^9.0.11
  • lint-staged ^15.2.2
  • pinst ^3.0.0
  • prettier ^3.2.5
  • rimraf ^5.0.5
  • tsup ^8.0.2
  • typedoc ^0.25.13
  • typedoc-json-parser ^10.0.0
  • typescript ^5.4.5
  • vitest 1.6.0
  • yarn 4.2.1

  • Check this box to trigger a request for Renovate to run again on this repository

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.