{ "info": { "author": "Slava Ganzin", "author_email": "slava.ganzin@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# ramda.py\n\n[![PyPI version](https://badge.fury.io/py/ramda.svg)](https://badge.fury.io/py/ramda)\n[![Build Status](https://travis-ci.org/slavaGanzin/ramda.py.svg?branch=master)](https://travis-ci.org/slavaGanzin/ramda.py) [![Coverage Status](https://coveralls.io/repos/github/slavaGanzin/ramda.py/badge.svg?branch=master)](https://coveralls.io/github/slavaGanzin/ramda.py?branch=master)\n\nPython Clone of [Ramda.js](http://ramdajs.com)\n\nImproved fork of [Jack Firth's original impementation](https://github.com/jackfirth/pyramda)\n\n```sh\npip install ramda\n```\n\n```python\n>>> from ramda import *\n>>> inc(1)\n2\n>>> map(inc, [1, 2, 3])\n[2, 3, 4]\n>>> incEach = map(inc)\n>>> incEach([1, 2, 3])\n[2, 3, 4]\n```\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n#Docs\n```python\nT(*args)\n \"\"\"A function that always returns true. Any passed in parameters are ignored\"\"\"\n\nadd(x, y)\n \"\"\"Adds two values\"\"\"\n\nadjust(f, i, xs)\n \"\"\"Applies a function to the value at the given index of an array, returning a\nnew copy of the array with the element at the given index replaced with the\nresult of the function application\"\"\"\n\nall(p, xs)\n \"\"\"Returns true if all elements of the list match the predicate, false if\nthere are any that don't.\nDispatches to the all method of the second argument, if present.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nall_pass(ps, v)\n \"\"\"Takes a list of predicates and returns a predicate that returns true for a\ngiven list of arguments if every one of the provided predicates is satisfied\nby those arguments.\nThe function returned is a curried function whose arity matches that of the\nhighest-arity predicate\"\"\"\n\nalways(x, y)\n \"\"\"Returns a function that always returns the given value. Note that for\nnon-primitives the value returned is a reference to the original value.\nThis function is known as const, constant, or K (for K combinator) in\nother languages and libraries\"\"\"\n\nany(p, xs)\n \"\"\"Returns true if at least one of elements of the list match the predicate,\nfalse otherwise.\nDispatches to the any method of the second argument, if present.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nany_pass(ps, v)\n \"\"\"Takes a list of predicates and returns a predicate that returns true for a\ngiven list of arguments if at least one of the provided predicates is\nsatisfied by those arguments.\nThe function returned is a curried function whose arity matches that of the\nhighest-arity predicate\"\"\"\n\nap(fs, xs)\n \"\"\"ap applies a list of functions to a list of values.\nDispatches to the ap method of the second argument, if present. Also\ntreats curried functions as applicatives\"\"\"\n\naperture(n, xs)\n \"\"\"Returns a new list, composed of n-tuples of consecutive elements. If n is\ngreater than the length of the list, an empty list is returned.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nappend(x, ys)\n \"\"\"Returns a new list containing the contents of the given list, followed by\nthe given element\"\"\"\n\napply(f, xs)\n \"\"\"Applies function fn to the argument list args. This is useful for\ncreating a fixed-arity function from a variadic function. fn should be a\nbound function if context is significant\"\"\"\n\napply_spec(spec)\n \"\"\"Given a spec object recursively mapping properties to functions, creates a\nfunction producing an object of the same structure, by mapping each property\nto the result of calling its associated function with the supplied arguments\"\"\"\n\napply_to(x, f)\n \"\"\"Takes a value and applies a function to it.\nThis function is also known as the thrush combinator\"\"\"\n\nascend(predicate)\n \"\"\"Makes an ascending comparator function out of a function that returns a value\nthat can be compared with < and >\"\"\"\n\nassoc(key, value, object)\n \"\"\"Makes a shallow clone of an object, setting or overriding the specified\nproperty with the given value. Note that this copies and flattens prototype\nproperties onto the new object as well. All non-primitive properties are\ncopied by reference\"\"\"\n\nassoc_path(path, value, object)\n \"\"\"Makes a shallow clone of an object, setting or overriding the nodes required\nto create the given path, and placing the specific value at the tail end of\nthat path. Note that this copies and flattens prototype properties onto the\nnew object as well. All non-primitive properties are copied by reference\"\"\"\n\nbinary(f)\n \"\"\"Wraps a function of any arity (including nullary) in a function that accepts\nexactly 2 parameters. Any extraneous parameters will not be passed to the\nsupplied function\"\"\"\n\nbind(f, o)\n \"\"\"Creates a function that is bound to a context.\nNote: R.bind does not provide the additional argument-binding capabilities of\nFunction.prototype.bind\"\"\"\n\nboth(p1, p2, v)\n \"\"\"A function which calls the two provided functions and returns the &&\nof the results.\nIt returns the result of the first function if it is false-y and the result\nof the second function otherwise. Note that this is short-circuited,\nmeaning that the second function will not be invoked if the first returns a\nfalse-y value.\nIn addition to functions, R.both also accepts any fantasy-land compatible\napplicative functor\"\"\"\n\ncall(f, *args)\n \"\"\"Returns the result of calling its first argument with the remaining\narguments. This is occasionally useful as a converging function for\nR.converge: the first branch can produce a function while the\nremaining branches produce values to be passed to that function as its\narguments\"\"\"\n\nchain(f, xs)\n \"\"\"chain maps a function over a list and concatenates the results. chain\nis also known as flatMap in some libraries\nDispatches to the chain method of the second argument, if present,\naccording to the FantasyLand Chain spec\"\"\"\n\nclamp(min, max, value)\n \"\"\"Restricts a number to be within a range.\nAlso works for other ordered types such as Strings and Dates\"\"\"\n\nclone(v)\n \"\"\"Creates a deep copy of the value which may contain (nested) Arrays and\nObjects, Numbers, Strings, Booleans and Dates. Functions are\nassigned by reference rather than copied\nDispatches to a clone method if present\"\"\"\n\ncomparator(predicate)\n \"\"\"Makes a comparator function out of a function that reports whether the first\nelement is less than the second\"\"\"\n\ncomplement(f)\n \"\"\"Takes a function f and returns a function g such that if called with the same arguments\nwhen f returns a \"truthy\" value, g returns false and when f returns a \"falsy\" value g returns true.\nR.complement may be applied to any functor\"\"\"\n\ncompose(*funcs)\n \"\"\"Performs right-to-left function composition. The rightmost function may have\nany arity; the remaining functions must be unary.\nNote: The result of compose is not automatically curried\"\"\"\n\nconcat(xs, ys)\n \"\"\"Returns the result of concatenating the given lists or strings.\nNote: R.concat expects both arguments to be of the same type,\nunlike the native Array.prototype.concat method. It will throw\nan error if you concat an Array with a non-Array value.\nDispatches to the concat method of the first argument, if present.\nCan also concatenate two members of a fantasy-land\ncompatible semigroup\"\"\"\n\ncond(conditions, value)\n \"\"\"Returns a function, fn, which encapsulates if/else, if/else, ... logic.\nR.cond takes a list of [predicate, transformer] pairs. All of the arguments\nto fn are applied to each of the predicates in turn until one returns a\n\"truthy\" value, at which point fn returns the result of applying its\narguments to the corresponding transformer. If none of the predicates\nmatches, fn returns undefined\"\"\"\n\ncontains(y, xs)\n \"\"\"Returns true if the specified value is equal, in R.equals\nterms, to at least one element of the given list; false otherwise\"\"\"\n\nconverge(converging, branches, args)\n \"\"\"Accepts a converging function and a list of branching functions and returns\na new function. When invoked, this new function is applied to some\narguments, each branching function is applied to those same arguments. The\nresults of each branching function are passed as arguments to the converging\nfunction to produce the return value\"\"\"\n\ncount_by(function, list)\n \"\"\"Counts the elements of a list according to how many match each value of a\nkey generated by the supplied function. Returns an object mapping the keys\nproduced by fn to the number of occurrences in the list. Note that all\nkeys are coerced to strings because of how JavaScript objects work.\nActs as a transducer if a transformer is given in list position\"\"\"\n\ncurry_by_spec(curry_spec, f)\n \"\"\"Returns a curried equivalent of the provided function. The curried function\nhas two unusual capabilities. First, its arguments needn't be provided one\nat a time. If f is a ternary function and g is R.curry(f), the\nfollowing are equivalent:\ng(1)(2)(3)\ng(1)(2, 3)\ng(1, 2)(3)\ng(1, 2, 3)\nSecondly, the special placeholder value R.__ may be used to specify\n\"gaps\", allowing partial application of any combination of arguments,\nregardless of their positions. If g is as above and _ is R.__,\nthe following are equivalent:\ng(1, 2, 3)\ng(_, 2, 3)(1)\ng(_, _, 3)(1)(2)\ng(_, _, 3)(1, 2)\ng(_, 2)(1)(3)\ng(_, 2)(1, 3)\ng(_, 2)(_, 3)(1)\"\"\"\n\ncurry_n(n, f)\n \"\"\"Returns a curried equivalent of the provided function, with the specified\narity. The curried function has two unusual capabilities. First, its\narguments needn't be provided one at a time. If g is R.curryN(3, f), the\nfollowing are equivalent:\ng(1)(2)(3)\ng(1)(2, 3)\ng(1, 2)(3)\ng(1, 2, 3)\nSecondly, the special placeholder value R.__ may be used to specify\n\"gaps\", allowing partial application of any combination of arguments,\nregardless of their positions. If g is as above and _ is R.__,\nthe following are equivalent:\ng(1, 2, 3)\ng(_, 2, 3)(1)\ng(_, _, 3)(1)(2)\ng(_, _, 3)(1, 2)\ng(_, 2)(1)(3)\ng(_, 2)(1, 3)\ng(_, 2)(_, 3)(1)\"\"\"\n\ndec(x)\n \"\"\"Decrements its argument\"\"\"\n\ndefault_to(default, x)\n \"\"\"Returns the second argument if it is not null, undefined or NaN;\notherwise the first argument is returned\"\"\"\n\ndescend(predicate)\n \"\"\"Makes a descending comparator function out of a function that returns a value\nthat can be compared with < and >\"\"\"\n\ndifference(xs, ys)\n \"\"\"Finds the set (i.e. no duplicates) of all elements in the first list not\ncontained in the second list. Objects and Arrays are compared in terms of\nvalue equality, not reference equality\"\"\"\n\ndifference_with(f, xs, ys)\n \"\"\"Finds the set (i.e. no duplicates) of all elements in the first list not\ncontained in the second list. Duplication is determined according to the\nvalue returned by applying the supplied predicate to two list elements\"\"\"\n\ndissoc(key, object)\n \"\"\"Returns a new object that does not contain a prop property\"\"\"\n\ndissoc_path(path, object)\n \"\"\"Makes a shallow clone of an object, omitting the property at the given path.\nNote that this copies and flattens prototype properties onto the new object\nas well. All non-primitive properties are copied by reference\"\"\"\n\ndivide(x, y)\n \"\"\"Divides two numbers. Equivalent to a / b\"\"\"\n\ndrop(n, xs)\n \"\"\"Returns all but the first n elements of the given list, string, or\ntransducer/transformer (or object with a drop method).\nDispatches to the drop method of the second argument, if present\"\"\"\n\ndrop_last(n, xs)\n \"\"\"Returns a list containing all but the last n elements of the given list\"\"\"\n\ndrop_last_while(predicate, xs)\n \"\"\"Returns a new list excluding all the tailing elements of a given list which\nsatisfy the supplied predicate function. It passes each value from the right\nto the supplied predicate function, skipping elements until the predicate\nfunction returns a falsy value. The predicate function is applied to one argument:\n(value)\"\"\"\n\nNone\n \"\"\"Returns a new list without any consecutively repeating elements.\nR.equals is used to determine equality.\nActs as a transducer if a transformer is given in list position\"\"\"\n\ndrop_repeats_with(f, xs)\n \"\"\"Returns a new list without any consecutively repeating elements. Equality is\ndetermined by applying the supplied predicate to each pair of consecutive elements. The\nfirst element in a series of equal elements will be preserved.\nActs as a transducer if a transformer is given in list position\"\"\"\n\ndrop_while(predicate, xs)\n \"\"\"Returns a new list excluding the leading elements of a given list which\nsatisfy the supplied predicate function. It passes each value to the supplied\npredicate function, skipping elements while the predicate function returns\ntrue. The predicate function is applied to one argument: (value).\nDispatches to the dropWhile method of the second argument, if present.\nActs as a transducer if a transformer is given in list position\"\"\"\n\neither(predicate1, predicate2, value)\n \"\"\"A function wrapping calls to the two functions in an || operation,\nreturning the result of the first function if it is truth-y and the result\nof the second function otherwise. Note that this is short-circuited,\nmeaning that the second function will not be invoked if the first returns a\ntruth-y value.\nIn addition to functions, R.either also accepts any fantasy-land compatible\napplicative functor\"\"\"\n\nempty(x)\n \"\"\"Returns the empty value of its argument's type. Ramda defines the empty\nvalue of Array ([]), Object ({}), String (''), and Arguments. Other\ntypes are supported if they define .empty,\n.prototype.empty or implement the\nFantasyLand Monoid spec.\nDispatches to the empty method of the first argument, if present\"\"\"\n\nends_with(needle, haystack)\n \"\"\"Checks if a list ends with the provided values\"\"\"\n\neq_by(predicate, a, b)\n \"\"\"Takes a function and two values in its domain and returns true if the\nvalues map to the same value in the codomain; false otherwise\"\"\"\n\neq_props(prop, object1, object2)\n \"\"\"Reports whether two objects have the same value, in R.equals\nterms, for the specified property. Useful as a curried predicate\"\"\"\n\nequals(x, y)\n \"\"\"Returns true if its arguments are equivalent, false otherwise. Handles\ncyclical data structures.\nDispatches symmetrically to the equals methods of both arguments, if\npresent\"\"\"\n\nevolve(transformations, object)\n \"\"\"Creates a new object by recursively evolving a shallow copy of object,\naccording to the transformation functions. All non-primitive properties\nare copied by reference.\nA transformation function will not be invoked if its corresponding key\ndoes not exist in the evolved object\"\"\"\n\nfilter(p, xs)\n \"\"\"Takes a predicate and a Filterable, and returns a new filterable of the\nsame type containing the members of the given filterable which satisfy the\ngiven predicate. Filterable objects include plain objects or any object\nthat has a filter method such as Array.\nDispatches to the filter method of the second argument, if present.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nfind(p, xs)\n \"\"\"Returns the first element of the list which matches the predicate, or\nundefined if no element matches.\nDispatches to the find method of the second argument, if present.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nfind_index(p, xs)\n \"\"\"Returns the index of the first element of the list which matches the\npredicate, or -1 if no element matches.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nfind_last(p, xs)\n \"\"\"Returns the last element of the list which matches the predicate, or\nundefined if no element matches.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nfind_last_index(p, xs)\n \"\"\"Returns the index of the last element of the list which matches the\npredicate, or -1 if no element matches.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nflatten_until(is_leaf, xs)\n \"\"\"Returns a new list by pulling every item out of it (and all its sub-arrays)\nand putting them in a new array, depth-first\"\"\"\n\nflip(f)\n \"\"\"Returns a new function much like the supplied one, except that the first two\narguments' order is reversed\"\"\"\n\nfor_each(f, xs)\n \"\"\"Iterate over an input list, calling a provided function fn for each\nelement in the list.\nfn receives one argument: (value).\nNote: R.forEach does not skip deleted or unassigned indices (sparse\narrays), unlike the native Array.prototype.forEach method. For more\ndetails on this behavior, see:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach#Description\nAlso note that, unlike Array.prototype.forEach, Ramda's forEach returns\nthe original array. In some libraries this function is named each.\nDispatches to the forEach method of the second argument, if present\"\"\"\n\nfor_each_obj_indexed(f, xs)\n \"\"\"Iterate over an input object, calling a provided function fn for each\nkey and value in the object.\nfn receives three argument: (value, key, obj)\"\"\"\n\nfrom_pairs(pairs)\n \"\"\"Creates a new object from a list key-value pairs. If a key appears in\nmultiple pairs, the rightmost pair is included in the object\"\"\"\n\ngroup_by(f, xs)\n \"\"\"Splits a list into sub-lists stored in an object, based on the result of\ncalling a String-returning function on each element, and grouping the\nresults according to values returned.\nDispatches to the groupBy method of the second argument, if present.\nActs as a transducer if a transformer is given in list position\"\"\"\n\ngroup_with(predicate, xs)\n \"\"\"Takes a list and returns a list of lists where each sublist's elements are\nall satisfied pairwise comparison according to the provided function.\nOnly adjacent elements are passed to the comparison function\"\"\"\n\ngt(y, x)\n \"\"\"Returns true if the first argument is greater than the second; false\notherwise\"\"\"\n\ngte(y, x)\n \"\"\"Returns true if the first argument is greater than or equal to the second;\nfalse otherwise\"\"\"\n\nhas(name, o)\n \"\"\"Returns whether or not an object has an own property with the specified name\"\"\"\n\nhead(list)\n \"\"\"Returns the first element of the given list or string. In some libraries\nthis function is named first\"\"\"\n\nidentical(x, y)\n \"\"\"Returns true if its arguments are identical, false otherwise. Values are\nidentical if they reference the same memory. NaN is identical to NaN;\n0 and -0 are not identical\"\"\"\n\nidentity(x)\n \"\"\"A function that does nothing but return the parameter supplied to it. Good\nas a default or placeholder function\"\"\"\n\nif_else(predicate, on_true_func, on_false_func, value)\n \"\"\"Creates a function that will process either the onTrue or the onFalse\nfunction depending upon the result of the condition predicate\"\"\"\n\ninc(x)\n \"\"\"Increments its argument\"\"\"\n\nindex_by(f, xs)\n \"\"\"Given a function that generates a key, turns a list of objects into an\nobject indexing the objects by the given key. Note that if multiple\nobjects generate the same value for the indexing key only the last value\nwill be included in the generated object.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nindex_of(y, xs)\n \"\"\"Returns the position of the first occurrence of an item in an array, or -1\nif the item is not included in the array. R.equals is used to\ndetermine equality\"\"\"\n\ninit(list)\n \"\"\"Returns all but the last element of the given list or string\"\"\"\n\ninner_join(predicate, xs, ys)\n \"\"\"Takes a predicate pred, a list xs, and a list ys, and returns a list\nxs' comprising each of the elements of xs which is equal to one or more\nelements of ys according to pred.\npred must be a binary function expecting an element from each list.\nxs, ys, and xs' are treated as sets, semantically, so ordering should\nnot be significant, but since xs' is ordered the implementation guarantees\nthat its values are in the same order as they appear in xs. Duplicates are\nnot removed, so xs' may contain duplicates if xs contains duplicates\"\"\"\n\ninsert(position, element, list)\n \"\"\"Inserts the supplied element into the list, at the specified index. Note that\nthis is not destructive: it returns a copy of the list with the changes.\nNo lists have been harmed in the application of this function\"\"\"\n\ninsert_all(position, elements, list)\n \"\"\"Inserts the sub-list into the list, at the specified index. Note that this is not\ndestructive: it returns a copy of the list with the changes.\nNo lists have been harmed in the application of this function\"\"\"\n\nintersection(list1, list2)\n \"\"\"Combines two lists into a set (i.e. no duplicates) composed of those\nelements common to both lists\"\"\"\n\nintersperse(separator, xs)\n \"\"\"Creates a new list with the separator interposed between elements.\nDispatches to the intersperse method of the second argument, if present\"\"\"\n\ninvert(object)\n \"\"\"Same as R.invertObj, however this accounts for objects with\nduplicate values by putting the values into an array\"\"\"\n\ninvert_obj(object)\n \"\"\"Returns a new object with the keys of the given object as values, and the\nvalues of the given object, which are coerced to strings, as keys. Note\nthat the last key found is preferred when handling the same value\"\"\"\n\ninvoker(arity, f)\n \"\"\"Turns a named method with a specified arity into a function that can be\ncalled directly supplied with arguments and a target object.\nThe returned function is curried and accepts arity + 1 parameters where\nthe final parameter is the target object\"\"\"\n\nis_empty(xs)\n \"\"\"Returns true if the given value is its type's empty value; false\notherwise\"\"\"\n\nis_nil(xs)\n \"\"\"Checks if the input value is null or undefined\"\"\"\n\njoin(sep, xs)\n \"\"\"Returns a string made by inserting the separator between each element and\nconcatenating all the elements into a single string\"\"\"\n\njuxt(functions, *args)\n \"\"\"juxt applies a list of functions to a list of values\"\"\"\n\nkeys(dict)\n \"\"\"Returns a list containing the names of all the enumerable own properties of\nthe supplied object.\nNote that the order of the output array is not guaranteed to be consistent\nacross different JS platforms\"\"\"\n\nlast(list)\n \"\"\"Returns the last element of the given list or string\"\"\"\n\nlast_index_of(y, xs)\n \"\"\"Returns the position of the last occurrence of an item in an array, or -1 if\nthe item is not included in the array. R.equals is used to\ndetermine equality\"\"\"\n\nlength(x)\n \"\"\"Returns the number of elements in the array by returning list.length\"\"\"\n\nlt(y, x)\n \"\"\"Returns true if the first argument is less than the second; false\notherwise\"\"\"\n\nlte(y, x)\n \"\"\"Returns true if the first argument is less than or equal to the second;\nfalse otherwise\"\"\"\n\nmap(f, xs)\n \"\"\"Takes a function and\na functor,\napplies the function to each of the functor's values, and returns\na functor of the same shape.\nRamda provides suitable map implementations for Array and Object,\nso this function may be applied to [1, 2, 3] or {x: 1, y: 2, z: 3}.\nDispatches to the map method of the second argument, if present.\nActs as a transducer if a transformer is given in list position.\nAlso treats functions as functors and will compose them together\"\"\"\n\nmap_accum(function, accumulator, list)\n \"\"\"The mapAccum function behaves like a combination of map and reduce; it\napplies a function to each element of a list, passing an accumulating\nparameter from left to right, and returning a final value of this\naccumulator together with the new list.\nThe iterator function receives two arguments, acc and value, and should\nreturn a tuple [acc, value]\"\"\"\n\nmap_accum_right(function, accumulator, list)\n \"\"\"The mapAccumRight function behaves like a combination of map and reduce; it\napplies a function to each element of a list, passing an accumulating\nparameter from right to left, and returning a final value of this\naccumulator together with the new list.\nSimilar to mapAccum, except moves through the input list from\nthe right to the left.\nThe iterator function receives two arguments, value and acc, and should\nreturn a tuple [value, acc]\"\"\"\n\nmap_obj_indexed(f, xs)\n \"\"\"An Object-specific version of map. The function is applied to three\narguments: (value, key, obj). If only the value is significant, use\nmap instead\"\"\"\n\nNone\n \"\"\"Tests a regular expression against a String. Note that this function will\nreturn an empty array when there are no matches. This differs from\nString.prototype.match\nwhich returns null when there are no matches\"\"\"\n\nmax(x, y)\n \"\"\"Returns the larger of its two arguments\"\"\"\n\nmax_by(f, x, y)\n \"\"\"Takes a function and two values, and returns whichever value produces the\nlarger result when passed to the provided function\"\"\"\n\nmean(xs)\n \"\"\"Returns the mean of the given list of numbers\"\"\"\n\nmedian(xs)\n \"\"\"Returns the median of the given list of numbers\"\"\"\n\nmemoize(f)\n \"\"\"Creates a new function that, when invoked, caches the result of calling fn\nfor a given argument set and returns the result. Subsequent calls to the\nmemoized fn with the same argument set will not result in an additional\ncall to fn; instead, the cached result for that set of arguments will be\nreturned\"\"\"\n\nmemoize_with(key_generator, f)\n \"\"\"A customisable version of R.memoize. memoizeWith takes an\nadditional function that will be applied to a given argument set and used to\ncreate the cache key under which the results of the function to be memoized\nwill be stored. Care must be taken when implementing key generation to avoid\nclashes that may overwrite previous entries erroneously\"\"\"\n\nmerge(object1, object2)\n \"\"\"Create a new object with the own properties of the first object merged with\nthe own properties of the second object. If a key exists in both objects,\nthe value from the second object will be used\"\"\"\n\nmerge_all(objects)\n \"\"\"Merges a list of objects together into one object\"\"\"\n\nmerge_with(function, object1, object2)\n \"\"\"Creates a new object with the own properties of the two provided objects. If\na key exists in both objects, the provided function is applied to the values\nassociated with the key in each object, with the result being used as the\nvalue associated with the key in the returned object\"\"\"\n\nmerge_with_key(function, object1, object2)\n \"\"\"Creates a new object with the own properties of the two provided objects. If\na key exists in both objects, the provided function is applied to the key\nand the values associated with the key in each object, with the result being\nused as the value associated with the key in the returned object\"\"\"\n\nmin(x, y)\n \"\"\"Returns the smaller of its two arguments\"\"\"\n\nmin_by(f, x, y)\n \"\"\"Takes a function and two values, and returns whichever value produces the\nsmaller result when passed to the provided function\"\"\"\n\nmodulo(x, y)\n \"\"\"Divides the first parameter by the second and returns the remainder. Note\nthat this function preserves the JavaScript-style behavior for modulo. For\nmathematical modulo see mathMod\"\"\"\n\nmultiply(x, y)\n \"\"\"Multiplies two numbers. Equivalent to a * b but curried\"\"\"\n\ngenerate_args(spec, n)\n \"\"\"Wraps a function of any arity (including nullary) in a function that accepts\nexactly n parameters. Any extraneous parameters will not be passed to the\nsupplied function\"\"\"\n\nnegate(x)\n \"\"\"Negates its argument\"\"\"\n\nnone(predicate, X)\n \"\"\"Returns true if no elements of the list match the predicate, false\notherwise.\nDispatches to the any method of the second argument, if present\"\"\"\n\nnth(n, xs)\n \"\"\"Returns the nth element of the given list or string. If n is negative the\nelement at index length + n is returned\"\"\"\n\nnth_arg(n)\n \"\"\"Returns a function which returns its nth argument\"\"\"\n\nobj_of(k, v)\n \"\"\"Creates an object containing a single key:value pair\"\"\"\n\nof(x)\n \"\"\"Returns a singleton array containing the value provided.\nNote this of is different from the ES6 of; See\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/of\"\"\"\n\nomit(keys, dict)\n \"\"\"Returns a partial copy of an object omitting the keys specified\"\"\"\n\nonce(f)\n \"\"\"Accepts a function fn and returns a function that guards invocation of\nfn such that fn can only ever be called once, no matter how many times\nthe returned function is invoked. The first value calculated is returned in\nsubsequent invocations\"\"\"\n\npair(first, second)\n \"\"\"Takes two arguments, fst and snd, and returns [fst, snd]\"\"\"\n\npartial(f, args)\n \"\"\"Takes a function f and a list of arguments, and returns a function g.\nWhen applied, g returns the result of applying f to the arguments\nprovided initially followed by the arguments provided to g\"\"\"\n\nNone\n \"\"\"Takes a predicate and a list or other Filterable object and returns the\npair of filterable objects of the same type of elements which do and do not\nsatisfy, the predicate, respectively. Filterable objects include plain objects or any object\nthat has a filter method such as Array\"\"\"\n\npath(keys, dict)\n \"\"\"Retrieve the value at a given path\"\"\"\n\npath_eq(path, equals_to, value)\n \"\"\"Determines whether a nested path on an object has a specific value, in\nR.equals terms. Most likely used to filter a list\"\"\"\n\npath_or(default, path, value)\n \"\"\"If the given, non-null object has a value at the given path, returns the\nvalue at that path. Otherwise returns the provided default value\"\"\"\n\npath_satisfies(predicate, path, value)\n \"\"\"Returns true if the specified object property at given path satisfies the\ngiven predicate; false otherwise\"\"\"\n\npick(keys, dict)\n \"\"\"Returns a partial copy of an object containing only the keys specified. If\nthe key does not exist, the property is ignored\"\"\"\n\npick_all(keys, dict)\n \"\"\"Similar to pick except that this one includes a key: undefined pair for\nproperties that don't exist\"\"\"\n\npick_by(f, dict)\n \"\"\"Returns a partial copy of an object containing only the keys that satisfy\nthe supplied predicate\"\"\"\n\npipe(*funcs)\n \"\"\"Performs left-to-right function composition. The leftmost function may have\nany arity; the remaining functions must be unary.\nIn some libraries this function is named sequence.\nNote: The result of pipe is not automatically curried\"\"\"\n\npluck(key, xs)\n \"\"\"Returns a new list by plucking the same named property off all objects in\nthe list supplied.\npluck will work on\nany functor in\naddition to arrays, as it is equivalent to R.map(R.prop(k), f)\"\"\"\n\nprepend(value, list)\n \"\"\"Returns a new list with the given element at the front, followed by the\ncontents of the list\"\"\"\n\nproduct(xs)\n \"\"\"Multiplies together all the elements of a list\"\"\"\n\nproject(selectors, list)\n \"\"\"Reasonable analog to SQL select statement\"\"\"\n\nprop(name, o)\n \"\"\"Returns a function that when supplied an object returns the indicated\nproperty of that object, if it exists\"\"\"\n\nprop_eq(property, value, object)\n \"\"\"Returns true if the specified object property is equal, in\nR.equals terms, to the given value; false otherwise.\nYou can test multiple properties with R.where\"\"\"\n\nprop_is(type, property, value)\n \"\"\"Returns true if the specified object property is of the given type;\nfalse otherwise\"\"\"\n\nprop_or(default, property, object)\n \"\"\"If the given, non-null object has an own property with the specified name,\nreturns the value of that property. Otherwise returns the provided default\nvalue\"\"\"\n\nprop_satisfies(predicate, property, object)\n \"\"\"Returns true if the specified object property satisfies the given\npredicate; false otherwise. You can test multiple properties with\nR.where\"\"\"\n\nprops(properties, object)\n \"\"\"Acts as multiple prop: array of keys in, array of values out. Preserves\norder\"\"\"\n\nrange(from_, to)\n \"\"\"Returns a list of numbers from from (inclusive) to to (exclusive)\"\"\"\n\nreduce(iterator, accumulator, list)\n \"\"\"Returns a single item by iterating through the list, successively calling\nthe iterator function and passing it an accumulator value and the current\nvalue from the array, and then passing the result to the next call.\nThe iterator function receives two values: (acc, value). It may use\nR.reduced to shortcut the iteration.\nThe arguments' order of reduceRight's iterator function\nis (value, acc).\nNote: R.reduce does not skip deleted or unassigned indices (sparse\narrays), unlike the native Array.prototype.reduce method. For more details\non this behavior, see:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce#Description\nDispatches to the reduce method of the third argument, if present. When\ndoing so, it is up to the user to handle the R.reduced\nshortcuting, as this is not implemented by reduce\"\"\"\n\nreduce_while(predicate, iterator, accumulator, list)\n \"\"\"Like reduce, reduceWhile returns a single item by iterating\nthrough the list, successively calling the iterator function. reduceWhile\nalso takes a predicate that is evaluated before each step. If the predicate\nreturns false, it \"short-circuits\" the iteration and returns the current\nvalue of the accumulator\"\"\"\n\n__init__(self, value)\n \"\"\"Returns a value wrapped to indicate that it is the final value of the reduce\nand transduce functions. The returned value should be considered a black\nbox: the internal structure is not guaranteed to be stable.\nNote: this optimization is unavailable to functions not explicitly listed\nabove. For instance, it is not currently supported by\nreduceRight\"\"\"\n\nreject(p, xs)\n \"\"\"The complement of filter.\nActs as a transducer if a transformer is given in list position. Filterable\nobjects include plain objects or any object that has a filter method such\nas Array\"\"\"\n\nremove(index, length, list)\n \"\"\"Removes the sub-list of list starting at index start and containing\ncount elements. Note that this is not destructive: it returns a copy of\nthe list with the changes.\nNo lists have been harmed in the application of this function\"\"\"\n\nrepeat(value, times)\n \"\"\"Returns a fixed list of size n containing a specified identical value\"\"\"\n\nreplace(pattern, replacement, string)\n \"\"\"Replace a substring or regex match in a string with a replacement\"\"\"\n\nreverse(list)\n \"\"\"Returns a new list or string with the elements or characters in reverse\norder\"\"\"\n\nscan(function, accumulator, list)\n \"\"\"Scan is similar to reduce, but returns a list of successively\nreduced values from the left\"\"\"\n\nslice(from_index, to_index, list_or_string)\n \"\"\"Returns the elements of the given list or string (or object with a slice\nmethod) from fromIndex (inclusive) to toIndex (exclusive).\nDispatches to the slice method of the third argument, if present\"\"\"\n\nsort(comparator, list)\n \"\"\"Returns a copy of the list, sorted according to the comparator function,\nwhich should accept two values at a time and return a negative number if the\nfirst value is smaller, a positive number if it's larger, and zero if they\nare equal. Please note that this is a copy of the list. It does not\nmodify the original\"\"\"\n\nsort_by(comparator, list)\n \"\"\"Sorts the list according to the supplied function\"\"\"\n\nsort_with(comparators, list)\n \"\"\"Sorts a list according to a list of comparators\"\"\"\n\nsplit(separator, string)\n \"\"\"Splits a string into an array of strings based on the given\nseparator\"\"\"\n\nsplit_at(index, list)\n \"\"\"Splits a given list or string at a given index\"\"\"\n\nsplit_every(length, collection)\n \"\"\"Splits a collection into slices of the specified length\"\"\"\n\nsplit_when(predicate, list)\n \"\"\"Takes a list and a predicate and returns a pair of lists with the following properties:\nthe result of concatenating the two output lists is equivalent to the input list;\nnone of the elements of the first output list satisfies the predicate; and\nif the second output list is non-empty, its first element satisfies the predicate\"\"\"\n\nstarts_with(values, list)\n \"\"\"Checks if a list starts with the provided values\"\"\"\n\nsubtract(x, y)\n \"\"\"Subtracts its second argument from its first argument\"\"\"\n\nsum(xs)\n \"\"\"Adds together all the elements of a list\"\"\"\n\nsymmetric_difference(first, second)\n \"\"\"Finds the set (i.e. no duplicates) of all elements contained in the first or\nsecond list, but not both\"\"\"\n\nsymmetric_difference_with(predicate, first, second)\n \"\"\"Finds the set (i.e. no duplicates) of all elements contained in the first or\nsecond list, but not both. Duplication is determined according to the value\nreturned by applying the supplied predicate to two list elements\"\"\"\n\ntail(list)\n \"\"\"Returns all but the first element of the given list or string (or object\nwith a tail method).\nDispatches to the slice method of the first argument, if present\"\"\"\n\ntake(n, list)\n \"\"\"Returns the first n elements of the given list, string, or\ntransducer/transformer (or object with a take method).\nDispatches to the take method of the second argument, if present\"\"\"\n\ntake_last(n, list)\n \"\"\"Returns a new list containing the last n elements of the given list.\nIf n > list.length, returns a list of list.length elements\"\"\"\n\ntake_last_while(predicate, list)\n \"\"\"Returns a new list containing the last n elements of a given list, passing\neach value to the supplied predicate function, and terminating when the\npredicate function returns false. Excludes the element that caused the\npredicate function to fail. The predicate function is passed one argument:\n(value)\"\"\"\n\ntake_while(predicate, list)\n \"\"\"Returns a new list containing the first n elements of a given list,\npassing each value to the supplied predicate function, and terminating when\nthe predicate function returns false. Excludes the element that caused the\npredicate function to fail. The predicate function is passed one argument:\n(value).\nDispatches to the takeWhile method of the second argument, if present.\nActs as a transducer if a transformer is given in list position\"\"\"\n\ntap(f, v)\n \"\"\"Runs the given function with the supplied object, then returns the object.\nActs as a transducer if a transformer is given as second parameter\"\"\"\n\ntest(pattern, string)\n \"\"\"Determines whether a given string matches a given regular expression\"\"\"\n\ntimes(n)\n \"\"\"Calls an input function n times, returning an array containing the results\nof those function calls.\nfn is passed one argument: The current value of n, which begins at 0\nand is gradually incremented to n - 1\"\"\"\n\nto_lower(string)\n \"\"\"The lower case version of a string\"\"\"\n\nto_pairs(object)\n \"\"\"Converts an object into an array of key, value arrays. Only the object's\nown properties are used.\nNote that the order of the output array is not guaranteed to be consistent\nacross different JS platforms\"\"\"\n\nto_upper(string)\n \"\"\"The upper case version of a string\"\"\"\n\ntranspose(list)\n \"\"\"Transposes the rows and columns of a 2D list.\nWhen passed a list of n lists of length x,\nreturns a list of x lists of length n\"\"\"\n\ntrim(x)\n \"\"\"Removes (strips) whitespace from both ends of the string\"\"\"\n\ntry_catch(tryer, catcher)\n \"\"\"tryCatch takes two functions, a tryer and a catcher. The returned\nfunction evaluates the tryer; if it does not throw, it simply returns the\nresult. If the tryer does throw, the returned function evaluates the\ncatcher function and returns its result. Note that for effective\ncomposition with this function, both the tryer and catcher functions\nmust return the same type of results\"\"\"\n\nunapply(function)\n \"\"\"Takes a function fn, which takes a single array argument, and returns a\nfunction which:\ntakes any number of positional arguments;\npasses these arguments to fn as an array; and\nreturns the result.\nIn other words, R.unapply derives a variadic function from a function which\ntakes an array. R.unapply is the inverse of R.apply\"\"\"\n\nunary(function)\n \"\"\"Wraps a function of any arity (including nullary) in a function that accepts\nexactly 1 parameter. Any extraneous parameters will not be passed to the\nsupplied function\"\"\"\n\nunfold(iterator, seed)\n \"\"\"Builds a list from a seed value. Accepts an iterator function, which returns\neither false to stop iteration or an array of length 2 containing the value\nto add to the resulting list and the seed to be used in the next call to the\niterator function.\nThe iterator function receives one argument: (seed)\"\"\"\n\nunion(X, Y)\n \"\"\"Combines two lists into a set (i.e. no duplicates) composed of the elements\nof each list\"\"\"\n\nunion_with(predicate, X, Y)\n \"\"\"Combines two lists into a set (i.e. no duplicates) composed of the elements\nof each list. Duplication is determined according to the value returned by\napplying the supplied predicate to two list elements\"\"\"\n\nuniq(xs)\n \"\"\"Returns a new list containing only one copy of each element in the original\nlist. R.equals is used to determine equality\"\"\"\n\nuniq_by(predicate, list)\n \"\"\"Returns a new list containing only one copy of each element in the original\nlist, based upon the value returned by applying the supplied function to\neach list element. Prefers the first item if the supplied function produces\nthe same value on two items. R.equals is used for comparison\"\"\"\n\nunless(predicate, function, value)\n \"\"\"Tests the final argument by passing it to the given predicate function. If\nthe predicate is not satisfied, the function will return the result of\ncalling the whenFalseFn function with the same argument. If the predicate\nis satisfied, the argument is returned as is\"\"\"\n\nunnest(list)\n \"\"\"Shorthand for R.chain(R.identity), which removes one level of nesting from\nany Chain\"\"\"\n\nuntil(predicate, transformation, value)\n \"\"\"Takes a predicate, a transformation function, and an initial value,\nand returns a value of the same type as the initial value.\nIt does so by applying the transformation until the predicate is satisfied,\nat which point it returns the satisfactory value\"\"\"\n\nupdate(i, v, xs)\n \"\"\"Returns a new copy of the array with the element at the provided index\nreplaced with the given value\"\"\"\n\nuse_with(function, transformers)\n \"\"\"Accepts a function fn and a list of transformer functions and returns a\nnew curried function. When the new function is invoked, it calls the\nfunction fn with parameters consisting of the result of calling each\nsupplied handler on successive arguments to the new function.\nIf more arguments are passed to the returned function than transformer\nfunctions, those arguments are passed directly to fn as additional\nparameters. If you expect additional arguments that don't need to be\ntransformed, although you can ignore them, it's best to pass an identity\nfunction so that the new function reports the correct arity\"\"\"\n\nvalues(dict)\n \"\"\"Returns a list of all the enumerable own properties of the supplied object.\nNote that the order of the output array is not guaranteed across different\nJS platforms\"\"\"\n\nwhen(predicate, when_true_fn, value)\n \"\"\"Tests the final argument by passing it to the given predicate function. If\nthe predicate is satisfied, the function will return the result of calling\nthe whenTrueFn function with the same argument. If the predicate is not\nsatisfied, the argument is returned as is\"\"\"\n\nwhere(spec, object)\n \"\"\"Takes a spec object and a test object; returns true if the test satisfies\nthe spec. Each of the spec's own properties must be a predicate function.\nEach predicate is applied to the value of the corresponding property of the\ntest object. where returns true if all the predicates return true, false\notherwise.\nwhere is well suited to declaratively expressing constraints for other\nfunctions such as filter and find\"\"\"\n\nwhere_eq(spec, object)\n \"\"\"Takes a spec object and a test object; returns true if the test satisfies\nthe spec, false otherwise. An object satisfies the spec if, for each of the\nspec's own properties, accessing that property of the object gives the same\nvalue (in R.equals terms) as accessing that property of the\nspec.\nwhereEq is a specialization of where\"\"\"\n\nwithout(xs1, xs2)\n \"\"\"Returns a new list without values in the first argument.\nR.equals is used to determine equality.\nActs as a transducer if a transformer is given in list position\"\"\"\n\nxprod(xs1, xs2)\n \"\"\"Creates a new list out of the two supplied by creating each possible pair\nfrom the lists\"\"\"\n\nzip(first, second)\n \"\"\"Creates a new list out of the two supplied by pairing up equally-positioned\nitems from both lists. The returned list is truncated to the length of the\nshorter of the two input lists.\nNote: zip is equivalent to zipWith(function(a, b) { return [a, b] })\"\"\"\n\nzip_obj(key, val)\n \"\"\"Creates a new object out of a list of keys and a list of values.\nKey/value pairing is truncated to the length of the shorter of the two lists.\nNote: zipObj is equivalent to pipe(zip, fromPairs)\"\"\"\n\nzip_with(f, xs1, xs2)\n \"\"\"Creates a new list out of the two supplied by applying the function to each\nequally-positioned pair in the lists. The returned list is truncated to the\nlength of the shorter of the two input lists\"\"\"\n\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/slavaGanzin/ramda.py", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "ramda", "package_url": "https://pypi.org/project/ramda/", "platform": "", "project_url": "https://pypi.org/project/ramda/", "project_urls": { "Homepage": "http://github.com/slavaGanzin/ramda.py" }, "release_url": "https://pypi.org/project/ramda/0.5.5/", "requires_dist": [ "future", "toolz" ], "requires_python": "", "summary": "Python clone of ramda.js (ramdajs.com)", "version": "0.5.5" }, "last_serial": 5791896, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "90a34deca9c9de2111fe90f7fbe9127a", "sha256": "1e175e042957608176808be4806aec7a2696975f65b96fc3aee6bcdda173becc" }, "downloads": -1, "filename": "ramda-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "90a34deca9c9de2111fe90f7fbe9127a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 50976, "upload_time": "2018-07-24T11:21:41", "url": "https://files.pythonhosted.org/packages/fc/88/a903445b964f00abac63d66374a0eb0f4902885232734af56a94e9287431/ramda-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5cc71278203846de52d8c74514105337", "sha256": "cd496ceaa297e0f6afb2af034deef2fdd7e07d50ce2dbbe4ffab5657177eb814" }, "downloads": -1, "filename": "ramda-0.2.tar.gz", "has_sig": false, "md5_digest": "5cc71278203846de52d8c74514105337", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15338, "upload_time": "2018-07-24T11:21:43", "url": "https://files.pythonhosted.org/packages/b6/87/43b2eebadc937e0439de4c9d929840d935024330b8f99fbcdb4f20376508/ramda-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "edb31c21a4a84a3b40a8d93bf772408e", "sha256": "b551014922d7dfafbb31b11a0b0c5575c5a28ef959a0140663bf89ab7e3b290f" }, "downloads": -1, "filename": "ramda-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "edb31c21a4a84a3b40a8d93bf772408e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42949, "upload_time": "2018-07-26T11:45:18", "url": "https://files.pythonhosted.org/packages/34/ec/0633511871ce6067db2987d72ae3fad630d820df39609ea760abf7966eae/ramda-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "53cbaecb06452cec6c1f6c6a4b9377ad", "sha256": "6157d3317dc95e8d219edeaced2ad98a738b1c10dd531dd1db5b57f3cd49f779" }, "downloads": -1, "filename": "ramda-0.2.1.tar.gz", "has_sig": false, "md5_digest": "53cbaecb06452cec6c1f6c6a4b9377ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13485, "upload_time": "2018-07-26T11:45:20", "url": "https://files.pythonhosted.org/packages/3e/4d/0b9a3eb32f660cfc45aba32f1f68697534c6171d55aa07390cbb38945da6/ramda-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "c5686a633e33f5c2851e06136dc8c763", "sha256": "007eb1484f705cd292cdd20b1860147d2c071c7c5adb072728c95cbdfba1650d" }, "downloads": -1, "filename": "ramda-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "c5686a633e33f5c2851e06136dc8c763", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 43722, "upload_time": "2018-07-26T12:47:44", "url": "https://files.pythonhosted.org/packages/bf/34/f6f0f7d1d550aa5dc8e68ce7c8827565765b724a58260a1757cc7cc8934b/ramda-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2d34b2ded8914223a70f540a065aa45", "sha256": "c5809a5c3b02b833727d386268de0a1bba36095b9bfae6f0d80bfb33b5ce90fb" }, "downloads": -1, "filename": "ramda-0.2.2.tar.gz", "has_sig": false, "md5_digest": "f2d34b2ded8914223a70f540a065aa45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13775, "upload_time": "2018-07-26T12:47:45", "url": "https://files.pythonhosted.org/packages/f7/9a/835f5a3da60e69af81623e0524c0dce0d7c196d324a01050537f4182a97b/ramda-0.2.2.tar.gz" } ], "0.2.2.1": [ { "comment_text": "", "digests": { "md5": "026d65b04a982c35ebf112ceada04bbb", "sha256": "4daee10d10fd2676dab5d6d349b61014b15f5cbad285640cd22b2ac910a5d6e0" }, "downloads": -1, "filename": "ramda-0.2.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "026d65b04a982c35ebf112ceada04bbb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 48375, "upload_time": "2018-07-26T13:00:17", "url": "https://files.pythonhosted.org/packages/f4/ea/56959f6caae0bd3277cd9d589f148bd42d4082a19faa418e210c702a782e/ramda-0.2.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "265d21412178348e4872de693b8fcb96", "sha256": "8530850e52f3e3dc31d0ed9d2262ade0b0039355e7089769fa9c6d380259c6af" }, "downloads": -1, "filename": "ramda-0.2.2.1.tar.gz", "has_sig": false, "md5_digest": "265d21412178348e4872de693b8fcb96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15406, "upload_time": "2018-07-26T13:00:19", "url": "https://files.pythonhosted.org/packages/08/db/36d5fd9cc93e3420fe7eaba67dc3022820340c2c919be77415b2217df1ea/ramda-0.2.2.1.tar.gz" } ], "0.2.2.2": [ { "comment_text": "", "digests": { "md5": "4a387f4e12deb69a22a5f7b1d1da3de3", "sha256": "032922404b2ef583a8356cc192a2b0c983a178922196be2b46b72b2747d8e870" }, "downloads": -1, "filename": "ramda-0.2.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "4a387f4e12deb69a22a5f7b1d1da3de3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 49177, "upload_time": "2018-07-30T13:02:38", "url": "https://files.pythonhosted.org/packages/c7/d8/11574d456074fdbd424c0f033df86cf93e0cc62132f4d1017e067a58d86c/ramda-0.2.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "04f68788eb573247f68c7894cd86099b", "sha256": "fcd9fb8ce946351c63da382e91716aaf1f0de2e20432272ff040ff79d76d63e8" }, "downloads": -1, "filename": "ramda-0.2.2.2.tar.gz", "has_sig": false, "md5_digest": "04f68788eb573247f68c7894cd86099b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15800, "upload_time": "2018-07-30T13:02:39", "url": "https://files.pythonhosted.org/packages/ee/e9/00de57c0b761196eb7b1cd674dca8596017cad345c491749440cb5d07a16/ramda-0.2.2.2.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "884242dbe87aad9e20e789aa4ce08967", "sha256": "431518c242d92ac5e9cc1d638677ee125877a6db1d2802830a64d38a4812e28d" }, "downloads": -1, "filename": "ramda-0.2.4-py3-none-any.whl", "has_sig": false, "md5_digest": "884242dbe87aad9e20e789aa4ce08967", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 53766, "upload_time": "2018-08-02T10:23:58", "url": "https://files.pythonhosted.org/packages/36/61/28e2a00fa6ee6f068a4515f388ffc2d8233297d54f346844d4e78f3fb705/ramda-0.2.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8655d5e54adbb226b5631aca2a4635ed", "sha256": "8136b475f2ec03d546295c95e8ada21952645becf7f2e7d9f2a4b380ddd4b4a0" }, "downloads": -1, "filename": "ramda-0.2.4.tar.gz", "has_sig": false, "md5_digest": "8655d5e54adbb226b5631aca2a4635ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17263, "upload_time": "2018-08-02T10:23:59", "url": "https://files.pythonhosted.org/packages/95/e4/b42837ca12c178dcb7c9db5301ca29c97e2a0eb8d80351fdea9082e13e55/ramda-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "70a97e2480f635bbc06aaa99703fe950", "sha256": "5fe9364b86929af6e79ef3e69eb6af38b6208520e5b4ce59638c74af1b99c0dd" }, "downloads": -1, "filename": "ramda-0.2.5-py3-none-any.whl", "has_sig": false, "md5_digest": "70a97e2480f635bbc06aaa99703fe950", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 61272, "upload_time": "2018-08-09T12:58:46", "url": "https://files.pythonhosted.org/packages/0d/d9/4e02053d484367793d50004a46ed75e5cf9cc54f26bb9912299b94ad9548/ramda-0.2.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "910f614c2efe2b2e5415b0c0e74af892", "sha256": "09d6cd86ad826e237e6e324ff2cc1b19eea9302ff1c52a29b2578b53a2df2976" }, "downloads": -1, "filename": "ramda-0.2.5.tar.gz", "has_sig": false, "md5_digest": "910f614c2efe2b2e5415b0c0e74af892", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20078, "upload_time": "2018-08-09T12:58:47", "url": "https://files.pythonhosted.org/packages/7b/d1/8ae77d9d1190b8353684eb36f03e16aa56ff49dba3de2680321f586ee71f/ramda-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "04b19f8072e26431ab726cc618fc9b54", "sha256": "37f975a9e85cf196fe8451aca2eeffc3bcd35dfa8c7fb70dfff05728d17350a2" }, "downloads": -1, "filename": "ramda-0.2.6-py3-none-any.whl", "has_sig": false, "md5_digest": "04b19f8072e26431ab726cc618fc9b54", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 71430, "upload_time": "2018-08-11T19:15:45", "url": "https://files.pythonhosted.org/packages/1c/c6/1ce29c241c4f6bbabd2932cc988f24af6aad2fe03172baa5e1e46b33fbed/ramda-0.2.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cf90b46f01f56993503141c353f7c36", "sha256": "d9b7b99b378a10ebda911947803baf85b0affb6e3e6310e652fa02348b5ef8e1" }, "downloads": -1, "filename": "ramda-0.2.6.tar.gz", "has_sig": false, "md5_digest": "0cf90b46f01f56993503141c353f7c36", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22414, "upload_time": "2018-08-11T19:15:46", "url": "https://files.pythonhosted.org/packages/cb/37/58075621f14f451233eba27cbf4f515ad021f1cd76c11ef8fa634f3dc22b/ramda-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "98cc079fc638372a3a70ecc919fdf82b", "sha256": "4f73d8fcac17d8d08301868c29b084758fa7e1117993317526f707f83c4011fb" }, "downloads": -1, "filename": "ramda-0.2.7-py3-none-any.whl", "has_sig": false, "md5_digest": "98cc079fc638372a3a70ecc919fdf82b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 74434, "upload_time": "2018-08-14T11:29:50", "url": "https://files.pythonhosted.org/packages/9f/cc/2dd9a40fe3f4fa397e83cf0f56f11d4304d74f8d9ec76aabb07e0addf4de/ramda-0.2.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "39b8bab87fa9685ece287cdefd42ee34", "sha256": "da692e6da98a879f7607c9c0bb4e2eebf245b78bb975b1d718a37b592fad63fc" }, "downloads": -1, "filename": "ramda-0.2.7.tar.gz", "has_sig": false, "md5_digest": "39b8bab87fa9685ece287cdefd42ee34", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23508, "upload_time": "2018-08-14T11:29:52", "url": "https://files.pythonhosted.org/packages/fa/c8/c4d2d1eaf7d1dfdc4bb6b6f18c1c2444885aa5b07c5a27e0550bbe571824/ramda-0.2.7.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "ae3009e49e426285c6ffb8f0deb0ded7", "sha256": "041b005b583c6ed824d0b86e6484d12554d6666d9732082d1c53b84567817ba9" }, "downloads": -1, "filename": "ramda-0.2.8-py3-none-any.whl", "has_sig": false, "md5_digest": "ae3009e49e426285c6ffb8f0deb0ded7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 76648, "upload_time": "2018-08-15T09:56:42", "url": "https://files.pythonhosted.org/packages/04/87/6e98e6f08980ead11b28bb7f381a56ba19c32d7bea2767136a05789bf642/ramda-0.2.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2179762fc69a6692da7e57e6ce503965", "sha256": "d7a3a3eb1b98f279bb6cb213e63866f33e5c25be6a7e8732580239c9063759cd" }, "downloads": -1, "filename": "ramda-0.2.8.tar.gz", "has_sig": false, "md5_digest": "2179762fc69a6692da7e57e6ce503965", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24142, "upload_time": "2018-08-15T09:56:43", "url": "https://files.pythonhosted.org/packages/d4/a6/62f26be07e78d8fcd39995e5969321c719dae2479be7125e20fb1f90329b/ramda-0.2.8.tar.gz" } ], "0.2.9": [ { "comment_text": "", "digests": { "md5": "9c1494c1450e4b2e03576b2afb849285", "sha256": "fdd6bacd6d8924c00d17441ebd616489af653cbad48a7549684f5f7ae538ab58" }, "downloads": -1, "filename": "ramda-0.2.9-py3-none-any.whl", "has_sig": false, "md5_digest": "9c1494c1450e4b2e03576b2afb849285", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 80739, "upload_time": "2018-08-20T09:38:34", "url": "https://files.pythonhosted.org/packages/3c/cd/a030e32c63225f2342b18fff79fcd15cbfbf2a62dad5195942f8256523da/ramda-0.2.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1e4ca451d7431764d5b0ea2edfbf4266", "sha256": "df74205fd2d9a4ba3f739d1f1dc4276128bd1239cffa93a058845fde0d3505c5" }, "downloads": -1, "filename": "ramda-0.2.9.tar.gz", "has_sig": false, "md5_digest": "1e4ca451d7431764d5b0ea2edfbf4266", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25385, "upload_time": "2018-08-20T09:38:35", "url": "https://files.pythonhosted.org/packages/23/d6/7f99af06e7b501a042668c4fb7c0b3c6c1ae0af0e8bce675f1a9ccf79001/ramda-0.2.9.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a84bae15d73359bb0ac5413cdd8b12dc", "sha256": "300511cb8a158bcc98e608a46e526ecdf7093b932c73d916222bfe7134e87f1a" }, "downloads": -1, "filename": "ramda-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a84bae15d73359bb0ac5413cdd8b12dc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 83370, "upload_time": "2018-08-23T16:13:39", "url": "https://files.pythonhosted.org/packages/c7/cb/935a41a3d357fef807420c1c775f8c9b473b04f28a3aea9553671ab90c05/ramda-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3ab663dd61c3dac91e2591e1de26e300", "sha256": "ca8821fc7e747f929dd672672e291b4dd1c7bc315fadcda723a1fb8ea097e7c8" }, "downloads": -1, "filename": "ramda-0.3.0.tar.gz", "has_sig": false, "md5_digest": "3ab663dd61c3dac91e2591e1de26e300", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26098, "upload_time": "2018-08-23T16:13:40", "url": "https://files.pythonhosted.org/packages/93/47/311ea0a131e2e34509b34de828a30c508e1660e583f952474d62feb5e6c9/ramda-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "c1a64bd1e14c237a23b0cd7ff22442df", "sha256": "96b20dc532efe6d2f7ca22b1dfa8c6e84bcd3b3939042f4b7cc5e6500a0676e6" }, "downloads": -1, "filename": "ramda-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c1a64bd1e14c237a23b0cd7ff22442df", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 89052, "upload_time": "2018-08-27T15:27:24", "url": "https://files.pythonhosted.org/packages/a5/83/3394cde41994add105fe2deaef3efc9ad9d65555b35cbfa5c57f1935acf6/ramda-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44456ccfb2cb4f5ecb6ddcdb065542c7", "sha256": "17e704a0988ef90616777dc1631a3179a564fdf11e1e908f283b2d1c7998cc69" }, "downloads": -1, "filename": "ramda-0.3.1.tar.gz", "has_sig": false, "md5_digest": "44456ccfb2cb4f5ecb6ddcdb065542c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27861, "upload_time": "2018-08-27T15:27:26", "url": "https://files.pythonhosted.org/packages/12/2f/45e0317dcfd8acd43a74c28a02928e151495094a413ead43f2b215ce665a/ramda-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "daa209252db5bc9c80d6928f58e457ba", "sha256": "1efddbacb12bbf7ab692a8040421760e7fedab8beeb5b83752d9357def6dece9" }, "downloads": -1, "filename": "ramda-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "daa209252db5bc9c80d6928f58e457ba", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 94194, "upload_time": "2018-09-11T11:18:45", "url": "https://files.pythonhosted.org/packages/63/78/0cd8f95cc150dd4ebc70e15910310a5ebaaed559d1d7c123103939254009/ramda-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "22e1046a17ffd05d77070f3702d9d61f", "sha256": "7852edab197439d40ff57b75eab886954ec29cb00eb76ef7444d4ca9f428007b" }, "downloads": -1, "filename": "ramda-0.3.2.tar.gz", "has_sig": false, "md5_digest": "22e1046a17ffd05d77070f3702d9d61f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29368, "upload_time": "2018-09-11T11:18:47", "url": "https://files.pythonhosted.org/packages/79/2c/3799b058d4ab75c1cdc9ee4307adbdfc7b6cf238e7ce64493489245b4a20/ramda-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "53707a3c52bfd5bb924558ab9f7dd55e", "sha256": "e3e3b806a7e2e601cbdf097090221a4432d21142e1a1a36fca86885a20eb90df" }, "downloads": -1, "filename": "ramda-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "53707a3c52bfd5bb924558ab9f7dd55e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 111965, "upload_time": "2018-09-13T12:49:57", "url": "https://files.pythonhosted.org/packages/b8/e3/89ef7445593b5973cfe3013c4b0322aa29b2a3c6676a527270cf827d4eea/ramda-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82d452e03c3963e1015d09b900a316fd", "sha256": "3cd445e29a62f385248500e2d1b79a29b8b815ed32812ef92a67bf08e9f6e37c" }, "downloads": -1, "filename": "ramda-0.4.0.tar.gz", "has_sig": false, "md5_digest": "82d452e03c3963e1015d09b900a316fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39127, "upload_time": "2018-09-13T12:50:00", "url": "https://files.pythonhosted.org/packages/85/3b/05cdfa1592b880433bba7b4e3d9bf4b3f40d6d951888f475148d2ae07a04/ramda-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "b67841feef37682405d22589a609ede0", "sha256": "881aa466db13cb7721bfc6afad25e00fe6315e8fbbd90f6e50e24eec5688addc" }, "downloads": -1, "filename": "ramda-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b67841feef37682405d22589a609ede0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 113375, "upload_time": "2018-09-16T10:27:37", "url": "https://files.pythonhosted.org/packages/ed/50/e653c9b387d8953c35bbaa7ff8a5707524559672946fce08ec8c1e63d6a6/ramda-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c9635a8cd311cf2597da89471e61ee32", "sha256": "b3edbf0e8860532b88830cf92f719b2d5db5e83401db78fbc5517452180e2244" }, "downloads": -1, "filename": "ramda-0.4.1.tar.gz", "has_sig": false, "md5_digest": "c9635a8cd311cf2597da89471e61ee32", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39675, "upload_time": "2018-09-16T10:27:40", "url": "https://files.pythonhosted.org/packages/2b/c9/34e2149ef9554e332cb15c9ff9ebb166c36787b0152aeaf5ff4378c910e1/ramda-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "9da7bbd67b10fad192b6d1563c330996", "sha256": "4308921264fdfc88d51ba099309913cd6b8c7e5cc593626c26d92685efef592b" }, "downloads": -1, "filename": "ramda-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "9da7bbd67b10fad192b6d1563c330996", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 116253, "upload_time": "2018-09-18T13:29:19", "url": "https://files.pythonhosted.org/packages/dc/33/479393ed23592f6ebcffe61a892065d7462b5ac5797acace821db0c9f308/ramda-0.4.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5e56b609fc1a90d4f1c2e7897c1e7988", "sha256": "c0428e749e022658fc60e90fed1c3da72d7dcf8fca3dc5d47348d94f6e3cc8d9" }, "downloads": -1, "filename": "ramda-0.4.2.tar.gz", "has_sig": false, "md5_digest": "5e56b609fc1a90d4f1c2e7897c1e7988", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40812, "upload_time": "2018-09-18T13:29:21", "url": "https://files.pythonhosted.org/packages/23/40/ab38f8b2a6335f37f813c075d1546645bfb06fe003e80fd88a5a484615e9/ramda-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "30781c0c9a66f358e344e8b599adf3d0", "sha256": "6aeaafef20abecd7ec853c4d2800db41f3142017327410d079544d4f45228f2d" }, "downloads": -1, "filename": "ramda-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "30781c0c9a66f358e344e8b599adf3d0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 122656, "upload_time": "2018-09-21T10:00:26", "url": "https://files.pythonhosted.org/packages/8e/17/950e484a02d8dd7e27174e8c01b771e6f4e369b00a3f6cb573b652b4605d/ramda-0.4.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "49aa0b2189e6f3c12022c9464c1878aa", "sha256": "01f8287e5e81278a83071d0ad863fbdb93816b233e024bd17f62795576608436" }, "downloads": -1, "filename": "ramda-0.4.3.tar.gz", "has_sig": false, "md5_digest": "49aa0b2189e6f3c12022c9464c1878aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42917, "upload_time": "2018-09-21T10:00:28", "url": "https://files.pythonhosted.org/packages/38/d3/6f721f431bfd875ddac8c254d84ab20b00c8b29cc64e02c0107f1c02ab5f/ramda-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "4c44d13c5aabfffee2528257124cb24e", "sha256": "24a3aab28482ae058b9e83828e6e2a4d56a377fe0281d0454a3340b71d980c7b" }, "downloads": -1, "filename": "ramda-0.4.4-py3-none-any.whl", "has_sig": false, "md5_digest": "4c44d13c5aabfffee2528257124cb24e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 133639, "upload_time": "2018-09-29T09:48:03", "url": "https://files.pythonhosted.org/packages/1c/3c/102a894140b986a5993151ed6254dd71980e86e32a098eedd4aae61a4f03/ramda-0.4.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "494b1b93fb6df418e305885efb9a67f6", "sha256": "df49e8db0163b79d092d99b6204368b90e9d9d7e72c0e06a9d46ff37fa5c2733" }, "downloads": -1, "filename": "ramda-0.4.4.tar.gz", "has_sig": false, "md5_digest": "494b1b93fb6df418e305885efb9a67f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46882, "upload_time": "2018-09-29T09:48:06", "url": "https://files.pythonhosted.org/packages/d7/fc/458ebbb6ff36958e96ce9d064fa41799e48a3c8632957e079b8b2d94db28/ramda-0.4.4.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "00fbdc6318a8c7e3af7111d9b05e672c", "sha256": "1144ff3796d289ed43918e53ed46b7742ae319731d1301e1650cfe04ce7789e2" }, "downloads": -1, "filename": "ramda-0.4.5-py3-none-any.whl", "has_sig": false, "md5_digest": "00fbdc6318a8c7e3af7111d9b05e672c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 135849, "upload_time": "2018-10-01T13:45:21", "url": "https://files.pythonhosted.org/packages/64/87/f601ad43aa3296f0cfcd73e2f1cdbc27ad6fff29863a7ae6f8e84c8f174b/ramda-0.4.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d8ef6de9bffbb56a3a6c8ebfc38c63f", "sha256": "4109b5e8fd5a0cca1d7690e41ff7005494addf8763aee08830fefe91422978c5" }, "downloads": -1, "filename": "ramda-0.4.5.tar.gz", "has_sig": false, "md5_digest": "4d8ef6de9bffbb56a3a6c8ebfc38c63f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47438, "upload_time": "2018-10-01T13:45:23", "url": "https://files.pythonhosted.org/packages/28/2f/046765ce96383dd19c9f27f69e1cdb9cc9b5d17ee3efb35b764549711430/ramda-0.4.5.tar.gz" } ], "0.4.6": [ { "comment_text": "", "digests": { "md5": "28368085a84646e9bf04b921b721822a", "sha256": "ef708601dd3b506a2b408da8c9771e7450362fb28da92a007430b582d576b6b0" }, "downloads": -1, "filename": "ramda-0.4.6-py3-none-any.whl", "has_sig": false, "md5_digest": "28368085a84646e9bf04b921b721822a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 142401, "upload_time": "2018-10-09T10:55:47", "url": "https://files.pythonhosted.org/packages/4e/dd/d85346c5ae3f558b65bae8c862fd0b46e56ddd3f4d330ed04145bc796222/ramda-0.4.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b432c63b20ebe0d58eb4e6562479c647", "sha256": "a32b4f4eeb314db552b6fd28eca341b731fcd54e294051a8a377a0265e2afe94" }, "downloads": -1, "filename": "ramda-0.4.6.tar.gz", "has_sig": false, "md5_digest": "b432c63b20ebe0d58eb4e6562479c647", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49701, "upload_time": "2018-10-09T10:55:49", "url": "https://files.pythonhosted.org/packages/a8/d3/1ff0db1c2d0305593dbf379a4592cd4082ea989d3513868a175b192796b6/ramda-0.4.6.tar.gz" } ], "0.4.7": [ { "comment_text": "", "digests": { "md5": "8d927d5b4ead8e74ddba85120260e7e0", "sha256": "3680e28e643025620831b04b56c44b9a296dde159e5b2d8115bae4f56abca7b9" }, "downloads": -1, "filename": "ramda-0.4.7-py3-none-any.whl", "has_sig": false, "md5_digest": "8d927d5b4ead8e74ddba85120260e7e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 143024, "upload_time": "2018-10-10T10:57:46", "url": "https://files.pythonhosted.org/packages/7d/d8/30e3a3a770de6aedd3350bcd7f813022fc3b4e2f1292e75fc740c6936078/ramda-0.4.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "759f2a707f6d12a15c06695960a28473", "sha256": "ce211804565240fa37df4c4735e2d950abb265a536b8be12150278c8b1f6dda3" }, "downloads": -1, "filename": "ramda-0.4.7.tar.gz", "has_sig": false, "md5_digest": "759f2a707f6d12a15c06695960a28473", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49909, "upload_time": "2018-10-10T10:57:48", "url": "https://files.pythonhosted.org/packages/e7/7f/5857883f92e81bcf9b28d958b351ea66abb7e88f883ea667bce1db59c646/ramda-0.4.7.tar.gz" } ], "0.4.8": [ { "comment_text": "", "digests": { "md5": "bb0458e70c03da6f3573911a0f5290c7", "sha256": "1fba99c89dc74e3fe872f4395b22555ec7a2d44a406b5a5f6a27e54d8880d111" }, "downloads": -1, "filename": "ramda-0.4.8-py3-none-any.whl", "has_sig": false, "md5_digest": "bb0458e70c03da6f3573911a0f5290c7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 145626, "upload_time": "2018-10-13T17:05:11", "url": "https://files.pythonhosted.org/packages/5b/ed/50d3925be7b74abccb0fdec83608c2f2c5195e07eb1f117f08e864b396de/ramda-0.4.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b800f2d6ab2009e34f6073cdb3930e89", "sha256": "7842ca767b1d6fdd39efec33fd08da7894d93ea01f9eeabd8fedba9af7235550" }, "downloads": -1, "filename": "ramda-0.4.8.tar.gz", "has_sig": false, "md5_digest": "b800f2d6ab2009e34f6073cdb3930e89", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50983, "upload_time": "2018-10-13T17:05:13", "url": "https://files.pythonhosted.org/packages/56/70/146aea810c68dcc61d6bb297494c2a96cb6965dffb3c681b93ef980c676c/ramda-0.4.8.tar.gz" } ], "0.4.9": [ { "comment_text": "", "digests": { "md5": "7f10a2e9a09ac6b16a2699d24f74cfac", "sha256": "f61bbecafe5f2a93243c6887833d3172ce7607c361058554fc940efcfabd00bf" }, "downloads": -1, "filename": "ramda-0.4.9-py3-none-any.whl", "has_sig": false, "md5_digest": "7f10a2e9a09ac6b16a2699d24f74cfac", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 148013, "upload_time": "2018-11-26T09:58:37", "url": "https://files.pythonhosted.org/packages/68/6e/549c2209aa8e3f43b15aae69eb8dd0b1c753712328fda4077f300f938bc1/ramda-0.4.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d75f22f772334f1639acc3691da5caa7", "sha256": "a9db0f45e26651d1e262127adb3bf217657646687d266b6729b2678e4ff336f8" }, "downloads": -1, "filename": "ramda-0.4.9.tar.gz", "has_sig": false, "md5_digest": "d75f22f772334f1639acc3691da5caa7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51968, "upload_time": "2018-11-26T09:58:40", "url": "https://files.pythonhosted.org/packages/7f/f1/c2b0c67e9ee771b0b126741a6f7caa316f76d45d4c2b6f29673b18c96171/ramda-0.4.9.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "d9de2dff0ab6770e5ba2000a9c997225", "sha256": "bead5158970bf6a1945d6d2d354c0f166d4763e476aeb18151eb599ec5acfb46" }, "downloads": -1, "filename": "ramda-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d9de2dff0ab6770e5ba2000a9c997225", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 148500, "upload_time": "2019-01-04T17:26:37", "url": "https://files.pythonhosted.org/packages/41/23/af93108433dfdde1541af0b65db80b367be0103a0218274923d668e0f68b/ramda-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "644409c6da079de6b50b0fbdbc63d3bd", "sha256": "40abd6edb8725f325def0fc27f7d5f496a3e61b72bcc6fe86c018c1484c9825f" }, "downloads": -1, "filename": "ramda-0.5.0.tar.gz", "has_sig": false, "md5_digest": "644409c6da079de6b50b0fbdbc63d3bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51199, "upload_time": "2019-01-04T17:26:40", "url": "https://files.pythonhosted.org/packages/fd/99/3e6a612f85b121e943af39a20e5e4ef2f55ae7cae4e89462239dd5483ea7/ramda-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "b592a152e62baae0f2d69f45b324c6d9", "sha256": "c9ffc9a619031d2bf2573bdce2ec920c8697552e9e890d5b44d7e93a6b2dbcea" }, "downloads": -1, "filename": "ramda-0.5.1.tar.gz", "has_sig": false, "md5_digest": "b592a152e62baae0f2d69f45b324c6d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51289, "upload_time": "2019-06-11T12:46:35", "url": "https://files.pythonhosted.org/packages/ac/83/20b75268a4d25c1f4576ef43f13b484050dc1285a7d32161787dcf436e25/ramda-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "028cd908d935b6c743072e8a3f02fda9", "sha256": "c4d65fe1df5f614ceb8d61684b621aa82e7f8973d8d146127260435b2b0ea540" }, "downloads": -1, "filename": "ramda-0.5.2.tar.gz", "has_sig": false, "md5_digest": "028cd908d935b6c743072e8a3f02fda9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51280, "upload_time": "2019-06-11T14:52:39", "url": "https://files.pythonhosted.org/packages/10/6e/256133650ac7bc68a38fd92da375a4f9e07d994586fc69c1b72ebe7a4543/ramda-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "b9c249751696ab1f8d532676d91e002e", "sha256": "73f43e650156edd5c222b8f34b82858d5b05700c1c23e9eda4ddbe149b5d4d04" }, "downloads": -1, "filename": "ramda-0.5.3-py3-none-any.whl", "has_sig": false, "md5_digest": "b9c249751696ab1f8d532676d91e002e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 160146, "upload_time": "2019-07-16T07:42:53", "url": "https://files.pythonhosted.org/packages/c0/f7/ef5cda94202038b0837278a9d7036ec1e22143f757cc0dcdd0aab4910e87/ramda-0.5.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d7a52c03c77381d3e980ff872fa61dc0", "sha256": "d859908573b42ff397abf9c84622d2cbafef50925927641a1737e779a2cef7ea" }, "downloads": -1, "filename": "ramda-0.5.3.tar.gz", "has_sig": false, "md5_digest": "d7a52c03c77381d3e980ff872fa61dc0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85067, "upload_time": "2019-07-16T07:42:58", "url": "https://files.pythonhosted.org/packages/e0/94/7860e524446d074b3417167a96167f1e7a6dea0baf62391b4b3363614ad2/ramda-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "62424b60b0bfc15ccddb5d058f0ed12c", "sha256": "491f4545329176c5d9782b81adcbfa22b9ba6ce75b02bfb5147512400ea609f1" }, "downloads": -1, "filename": "ramda-0.5.4-py3-none-any.whl", "has_sig": false, "md5_digest": "62424b60b0bfc15ccddb5d058f0ed12c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 160020, "upload_time": "2019-07-17T13:35:50", "url": "https://files.pythonhosted.org/packages/3f/e9/e1aa4350185dc984b2d8202ce2b6ed8a98e482d1a421fcb1beec670f70f7/ramda-0.5.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1574553f9b770d32f369b99a3670f500", "sha256": "68b5556ade5502a1301b04fd2146af80ebca334ef304c97e38d672902d3c76ae" }, "downloads": -1, "filename": "ramda-0.5.4.tar.gz", "has_sig": false, "md5_digest": "1574553f9b770d32f369b99a3670f500", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84770, "upload_time": "2019-07-17T13:35:53", "url": "https://files.pythonhosted.org/packages/90/bd/622c5d2f7d700cb2d668ef5e3896274612b5c5c81b826258315ff628c610/ramda-0.5.4.tar.gz" } ], "0.5.5": [ { "comment_text": "", "digests": { "md5": "af8a9e94665f41570d019ed03f11591b", "sha256": "23faab4a49f0ea4e5c328590b755e5cc5301381fc37efd5ed4d56b697c77346e" }, "downloads": -1, "filename": "ramda-0.5.5-py3-none-any.whl", "has_sig": false, "md5_digest": "af8a9e94665f41570d019ed03f11591b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 160793, "upload_time": "2019-09-06T12:11:51", "url": "https://files.pythonhosted.org/packages/06/a9/1e8a1ac34b895d8f556a6d8082c5c279921bda3509ff58e8902988634fb5/ramda-0.5.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e99171413e87aef991db0890ca57b6fa", "sha256": "39c2cb4840b4b86502711d423b15bda030b2e4cd595d23c17f5f37fbb2be728d" }, "downloads": -1, "filename": "ramda-0.5.5.tar.gz", "has_sig": false, "md5_digest": "e99171413e87aef991db0890ca57b6fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84812, "upload_time": "2019-09-06T12:11:54", "url": "https://files.pythonhosted.org/packages/8d/cb/eae541b585b1797afacf5c7e02d7d0e403a6bd09c936949381c0172f0c83/ramda-0.5.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "af8a9e94665f41570d019ed03f11591b", "sha256": "23faab4a49f0ea4e5c328590b755e5cc5301381fc37efd5ed4d56b697c77346e" }, "downloads": -1, "filename": "ramda-0.5.5-py3-none-any.whl", "has_sig": false, "md5_digest": "af8a9e94665f41570d019ed03f11591b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 160793, "upload_time": "2019-09-06T12:11:51", "url": "https://files.pythonhosted.org/packages/06/a9/1e8a1ac34b895d8f556a6d8082c5c279921bda3509ff58e8902988634fb5/ramda-0.5.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e99171413e87aef991db0890ca57b6fa", "sha256": "39c2cb4840b4b86502711d423b15bda030b2e4cd595d23c17f5f37fbb2be728d" }, "downloads": -1, "filename": "ramda-0.5.5.tar.gz", "has_sig": false, "md5_digest": "e99171413e87aef991db0890ca57b6fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84812, "upload_time": "2019-09-06T12:11:54", "url": "https://files.pythonhosted.org/packages/8d/cb/eae541b585b1797afacf5c7e02d7d0e403a6bd09c936949381c0172f0c83/ramda-0.5.5.tar.gz" } ] }