Skip to content

Latest commit

 

History

History
409 lines (235 loc) · 15.3 KB

CHANGELOG.md

File metadata and controls

409 lines (235 loc) · 15.3 KB

Release notes

1.3.19

Bugs Squashed

  • urlsave using str instead of bytes (#280)
  • sparkline errors when a value is given that exceeds mx (#277)

1.3.17

New Features

  • add strcat and mapt (#273)

1.3.14

New Features

  • add loads_multi (#271)

Bugs Squashed

  • ignored empty str names in store_attr (#267)
  • returns_none not returning non-none type (#266)
  • Transform return type ignored (#265)
  • test_eq incorrect for pandas DataFrame (#188), thanks to @kessido

1.3.13

New Features

  • add EventTimer (#263)
  • Store kwargs in `store_attr (#262)
  • add truncstr (#261)
  • add sparkline (#260)
  • add autostart for generators (#249)
  • dynamic fastcore.script help width (#247)
  • optional override to risinstance to support both types and str in the same function (#191), thanks to @kessido

Bugs Squashed

  • delegates doesn't pull the __init__ of a class (#217)
  • test_eq incorrect for pandas DataFrame (#188), thanks to @kessido

1.3.12

New Features

  • enum support for call_parse (#245)
  • Added obj2dict (#244)
  • return_headers param for urlsend and urlread (#242)
  • add common Chrome headers (#241)
  • add utc2local and local2utc (#239)
  • add Path.read_json (#238)

Bugs Squashed

  • *args not handled correctly in process/thread pools (#246)

1.3.11

Bugs Squashed

  • regression in urlopen header user-agent not set (#237)
  • loads incompatible with Python 3.9 (#236)
  • Documentation search not working (#235)

1.3.10

New Features

  • split parallel and net modules out of xtras (#234)
  • New HTTP Exceptions hierarchy for each status code, used by url* functions
  • add Request.summary and debug paramaeter to urlsend (#233)
  • Add ImportEnum, StrEnum, and str_enum (#232)
  • handle encoded data in urlrequest (#231)

1.3.9

New Features

  • use __slots__ in store_attr if exists (#226)
  • add urlrequest (#225)
  • add loads and urlsend (#224)
  • add PartialFormatter and partial_format (#223)
  • add stringfmt_names (#222)

1.3.8

New Features

  • rename negate_func to not_ for consistency with other curried ops (#221)
  • Support empty content for urljson (#219)
  • move patch and patch_to to fastcore.basics, and avoid clobbering existing symbols when patching (#214)

1.3.7

New Features

  • add startthread (#218)
  • make run compatible with py36 (#216)
  • reuse_addr param to start_server (#215)
  • add rfc3986 list to urlquote (#213)

1.3.6

New Features

  • quote URL paths in urlwrap (#211)
  • Add start_server and start_client for simple socket networking (#210)
  • new uniqueify and val2idx functions, and additional params to listify (#209)
  • improve representation in basic_repr (#197)

1.3.5

Breaking Changes

  • remove log_args (#176)

New Features

  • Stateful base class/mixin for objects that should not serialize all their state (#196)
  • new frame param to argnames (#195)
  • add urlopen and untar_dir (#192)
  • SCRIPT_INFO.func to let functions know what CLI name was called in fastcore.script (#185)
  • add annotations and argnames functions (#179)
  • allow but param in store_attr to be either list or str (#174)
  • add urlvalid (#173)

Bugs Squashed

  • @typed doesn't work with classes (#183) (reported by @krishnap)

1.3.2

New Features

  • add repr_dict and use for display for AttrDict (#172)
  • add urlsave, urlclean, and repo_details (#171)
  • remove_suffix function (#170)
  • add urlcheck and urlwrap (#168)
  • new AutoInit mixin (#165)

Bugs Squashed

  • risinstance fails if param is not truthy (#166)

1.3.1

New Features

  • callable support for Self (#162)
  • add filter func to first (#161)
  • maybe_open context manager and fast image_size funcion (#160)

Bugs Squashed

  • Redundent L.map_filter removed (since L.map.filter does the same thing)

1.3.0

Breaking Changes

  • change param name copy_meta->as_copyinretain_meta` (#157)

New Features

  • groupby extensions for int and str instead of callables, and an optional val transform (#155)
  • add modified_env (#148)

Bugs Squashed

  • coll_repr printing incorrectly when max_n!=10 (#154), thanks to @kessido

1.2.5

New Features

  • add true, NullType, null, and tonull (#153)
  • add working_directory (#151)
  • move bind et al to fastcore.basics (#150)

1.2.4

New Features

  • move basic functionality into fastcore.basics, using minimal imports (#149)
  • add anno_dict and empty2none in meta (#145)

1.2.3

New Features

  • add try_attrs (#142)
  • add filter_dict, filter_keys, and filter_values (#140)
  • add str2bool (#138)

Bugs Squashed

  • type fails with @typedispatch (#144)
  • with_cast fails to cast default values (#139)

1.2.2

New Features

  • support store_true and store_false in fastcore.script (#137)
  • add function otherwise (#136)
  • add pdb debug flag to scripts (#133)
  • Update copy_func to include required keyword defaults (#134), thanks to @worc3131

1.2.0

Breaking Changes

  • Config no longer magically converts str->Path for any keys. Use new path method instead (#131)

New Features

  • rinstance: Curried isinstance but with args reversed, suitable for partial (#130)
  • Use _repr_pretty_ for L (#129)
  • open_file to open optionally-compressed files for reading and writing, and add compression support to load_pickle and save_pickle (#128)
  • add context manager for failed tests (#126), thanks to @hamelsmu
  • Add Request.request support to urlread (#132)

1.1.2

New Features

  • runtime type checking with typed decorator (#125)

1.1.1

New Features

  • threaded decorator (#124)
  • POST support for urlread (#124)
  • add sorted_ex, map_ex, filter_ex, and argwhere` (#122)

1.1.0

Breaking Changes

  • Remove Path.{read,write} (use Path.{read_text,write_text} instead) and change Path.{load,save} to functions load_pickle and save_pickle (#121)

1.0.22

New Features

  • add L.setattrs, inspired by Saul Pwanson (#117)
  • move Config from nbdev (#116)
  • add nested_attr and use it in L.attrgot (#115)

1.0.21

Deprecations (will be removed in future release)

  • patch_property: use patch(as_prop=True) instead

New Features

  • New param cast for store_attr and new decorator with_cast (#114)
  • add L.insert and exec_local (#113)
  • Patch decorator with optional argument (#110), thanks to @Salehbigdeli
  • Make typedispatch decorator more general (#106), thanks to @Salehbigdeli

Bugs Squashed

  • Fix default in oper (#112), thanks to @Salehbigdeli
  • Inconsistency with cmp_instance and typedispatch because of binary sort algorithm (#100)

1.0.20

New Features

  • add ignore_ex=False and as_bytes=False params to run (#108)
  • AttrDict: a dict subclass that also provides access to keys as attrs; and change dict2obj to create AttrDicts instead of SimpleNamespaces (#107)

1.0.19

New Features

  • run: flexibly run an external process and raise exception if it fails (#105)

1.0.16

New Features

  • add threadpool=False param to parallel to use threads instead of processes (#102)

1.0.15

New Features

  • add L.map_filter and L.map_first (#97)
    • These support some nice refactorings, like changing from this:
      d = []
      for c in cs:
        m = f(c)
        if not m:
          continue
        d.append(m.group(1))
      to this:
      d = cs.map_filter(f).map(Self.group(1))

1.0.14

Bugs Squashed

  • Reapply fix for #86 which was unintentionally reverted by the next commit (#91)

1.0.13

New Features

  • dict2obj: Convert (possibly nested) dicts (or lists of dicts) to SimpleNamespace (#90)

1.0.12

New Features

  • add function support to store_attr (#85)

Bugs Squashed

  • mp_context keyword for initialising concurrent.futures.ProcessPoolExecutor only supported in python 3.7+ (#86)

1.0.10

Breaking Changes

  • remove parallel_chunked, use chunksize arg to parallel instead (#81)

New Features

  • move fastscript to fastcore.script (#84)
  • add run_proc and do_request (#83)
  • added chunksize to parallel, which passes to ProcessPoolExecutor.map (#82)
  • move metaclasses and delegates et al to new meta module (#80)

1.0.4

New Features

  • Remove numpy prerequisite (#75)
    • NB: fastcore's L and other collection features still work with numpy arrays, but they do so internally using instance methods, so numpy is no longer a prerequisite, and numpy is not loaded if not used

1.0.2

Bugs Squashed

  • "has default params. These will be ignored" shown when not appropriate (#74)

1.0.1

Breaking Changes

  • Change arguments of store_attr() and remove store_attrs attribute (#71)
    • store_attr's API has changed. self is now the second parameter, and is optional. Previously, if no names were passed to store, names were taken from the store_attrs attribute; now, however, names are taken from the list of arguments to the current function.

New Features

  • Warn if defaults passed to typedispatch (#73)

  • Add urlread and urljson (#72)

Version 1.0.0

  • Initial release