3.0.0-0 • Published 2 years ago

@laufire/utils v3.0.0-0

Weekly downloads
284
License
ISC
Repository
github
Last release
2 years ago

Laufire - JS Utils

A simple set of utility libraries to ease development.

Notes

  • The reason for writing custom functions instead of depending on libraries is that, there isn't a coherent set. Depending on many libraries increases the time to learn their APIs.

  • The differences between some functions: merge - replaces array elements, thus does not allow resulting array to have fewer elements. overlay - uses extension arrays, as they are, allowing for greater control. * combine - adds the extension arrays to the source arrays, thus makes array lengths the sum of the two.

  • Randomized tests are expected to have an accuracy above second standard deviation, to allow for faster testing cycles.

HowTo

  • When immutability is required for functions like collection.merge and collection.combine, pass an empty base object. Ex: merge({}, someObj)

ToDo

  • Consider passing nested paths to the callbacks of collection.traverse and collection.walk.

  • Ensure key order in the results.

  • Move to Typescript, to allow for better support on IDEs.

  • Fix grammar.

  • Improve API documentation.

  • Test the index file for the integrity of imports.

  • Coverage might not cover all paths. Especially those of shared functions, as they might be partially covered by multiple functions, yet report full coverage. Find a fix for this.

  • Make randomized testing to achieve accuracy above third standard deviation, when publishing (to NPM). Use environment variables.

  • Functionalities:

    	* collection
    
    		* set - a container agnostic function to set the given values to the given keys.
    
    		* till / findResult - a findKey like function which returns the return value of the predicate instead.
  • Pre-release

    	* Audit the packages.
    
    	* Update the packages.
    
    	* Support at least the last four LTS vesrions of Node JS.

Later

  • Test for and improve performance.

  • Rename the functions for readability, ease of recollection and to be semantic.

  • Try avoiding duplicate names across modules.

  • Try to build synthesis with al-js.

Gotchas

  • Object keys maintain a chronological order, unless they are integers. In which case they are added to the beginning in an ascending order.

Decisions

  • 20211111 - Decided to use numbers as array keys, to play nice with third party libraries.
3.0.0-0

2 years ago

2.9.2

3 years ago

2.9.1

3 years ago

2.8.1

3 years ago

2.8.0

3 years ago

2.9.0

3 years ago

2.8.2

3 years ago

2.6.0

3 years ago

2.5.6

3 years ago

2.5.5

3 years ago

2.7.0

3 years ago

2.5.4

4 years ago

2.5.2

4 years ago

2.5.3

4 years ago

2.5.1

4 years ago

2.5.0

4 years ago

2.4.0

4 years ago

2.3.0

4 years ago

2.2.0

4 years ago

2.1.1

4 years ago

2.1.0

4 years ago

2.0.0

4 years ago

1.3.2

4 years ago

1.3.1

4 years ago

1.3.0

4 years ago

1.2.2

4 years ago

1.2.1

4 years ago

1.2.0

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.0.30

5 years ago

0.0.29

5 years ago

0.0.28

5 years ago

0.0.27

5 years ago

0.0.26

5 years ago

0.0.25

5 years ago

0.0.24

5 years ago

0.0.23

5 years ago

0.0.22

5 years ago

0.0.21

5 years ago

0.0.20

5 years ago

0.0.19

5 years ago

0.0.18

5 years ago

0.0.17

5 years ago

0.0.16

5 years ago

0.0.15

5 years ago

0.0.14

5 years ago

0.0.13

5 years ago

0.0.12

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago