Changelog:
Version 21.0.1 April 9 2021
Changes
* Always renew apppasswords on login (server#25571)
* Improve mention matches (server#25573)
* Disable trasbin during the moveFromStorage fallback (server#25877)
* Clear multiselect after selection in share panel (server#25918)
* Activity: show if files are hidden or not (server#25935)
* Sharebymail: set expiration on creation (server#25937)
* Catch notfound and forbidden exception in smb::getmetadata (server#25943)
* Skip empty obsolete owner when adding to own NC (server#25955)
* Fix admin password strengthify tooltip (server#25962)
* Add missing waits and asserts in acceptance tests (server#25993)
* Hide expiration date field for remote shares (server#26026)
* Remove trash items from other trash backends when deleting all (server#
26039)
* Fix SCSS compiler deprecated function usages (server#26042)
* Provisioning API to IBootstrap (server#26044)
* Cache baseurl in url generator (server#26051)
* Allow autocomplete based on phone sync (server#26056)
* Only clear share password model when actually saved (server#26058)
* Add appconfig to always show the unique label of a sharee (server#26062)
* Only clear known users when we had at least one phonebook entry (server#
26081)
* Chunk the array of phone numbers (server#26084)
* Limit constructing of result objects in file search (server#26087)
* Apply object store copy optimization when 'cross storage' copy is wit...
(server#26090)
* Add getID function to the simplefile implementation (server#26119)
* Allow overwriting isAuthenticated (server#26122)
* Send share notification instead of erroring on duplicate share (server#
26124)
* Log exceptions when creating share (server#26128)
* Do cachejail search filtering in sql (server#26133)
* Return the fileid from `copyFromCache` and use it instead of doing an extra
query (server#26146)
* Dont allow creating users with __groupfolders as uid (server#26151)
* Use correct exception type hint in catch statement (server#26162)
* Fix default missing initial state for templates (server#26166)
* Remove explicit fclose from S3->writeStream (server#26167)
* Adds ldap user:reset command (server#26175)
* Improve search results when only phonebook-matches can we autocompleted
(server#26177)
* Fix valid storages removed when cleaning remote storages (server#26192)
* Update user share must use correct expiration validation (server#26204)
* Expand 'path is already shared' error message (server#26211)
* Add (hidden) option to always show smb root as writable (server#26215)
* Removed unnecessary padding (server#26227)
* L10n: Add words user and because in ShareByMailProvider.php (server#26238)
* Fix non LGC glyphs in avatars and txt file previews (server#26249)
* Handle limit offset and sorting in files search (server#26257)
* Update icewind/smb to 3.4.0 (server#26263)
* Catch invalid cache source storage path (server#26271)
* Fix casing of core test folder, bring back missing tests (server#26276)
* L10n: Separate ellipsis (server#26279)
* Show better error messages when a file with a forbidden path is encountered
(server#26291)
* Fix l10n (server#26298)
* Log when a storage is marked as unavailable (server#26301)
* Delete old birthday calendar object when moving contact to another ad...
(server#26307)
* Add a prefix index to filecache.path (server#26326)
* Avatar privacy and new scope (server#26352)
* Fix broken Calendar Event Invite email icons in Gmail by using PNGs instead
of SVGs (server#26357)
* Update cipher defaults (server#26363)
* Fix wording for phone number integration (server#26366)
* Remove notifications when retesting profile field input (server#26371)
* Do not attempt to read 0 bytes when manually iterating over a non-seekable
file (server#26376)
* Fix(translation): replace static error message (server#26377)
* Only mark migrations as installed after execution (server#26379)
* Gracefully handle deleteFromSelf when share is already gone (server#26382)
* Also check the default phone region when the number has no country code
(server#26391)
* Allow apps to write/update account data (server#26398)
* Log and continue when failing to update encryption keys during for
individual files (server#26400)
* Make ILDAPProviderFactory usable when there is no ldap setup (server#26402)
* Remove leftover debug @NoCSRFRequired introduced with #26198 (server#26404)
* Get the parent directory before creating a file from a template (server#
26406)
* Bump y18n from 4.0.0 to 4.0.1 (server#26413)
* [3rdparty]phpseclib-2.0.31 (server#26447)
* Revert "add a prefix index to filecache.path" (server#26451)
* 21.0.1 final (server#26453)
* Show icon-phone when setting is set to private instead of local (server#
26459)
* Bump phpseclib/phpseclib from 2.0.30 to 2.0.31 (3rdparty#643)
* Fix 'Daily activity summary' email subject translation (activity#562)
* Fix notifying own activities (activity#566)
* Send the footer with the defined language (activity#570)
* Make sure we only load the public script on public pages (files_pdfviewer#
340)
* Extend reasons for email address (firstrunwizard#503)
* Only send desktop notifications in one tab (notifications#911)
* Fix Photos not shown in large browser windows #630 (photos#689)
* Add vue-virtual-grid to babel (photos#710)
* Match any non-whitespace character in filesystem type pattern (serverinfo#
280)
* Fix Internal Server Error @ /settings/admin/serverinfo in 21.0.0
(serverinfo#287)
* Disable cypress recording for now (text#1504)
* Use write permission when possible (text#1512)
* Fix clicking links with color annotations (text#1516)
* Update CLI tests to PHP 7.4 to 8.0 (updater#346)
* Disable UI when web updater is disabled in config.php (updater#351)
* Remove obsolete pipeline php72-master (updater#355)
* Update used version of box (updater#359)
* Do not allow to keep maintenance mode active in web updater (updater#363)
* Fix fullscreen (viewer#842)
A high performance csv viewer with cjk/emoji support.
Features:
-Small and fast (see benchmarks below).
-Correctly handles CJK characters and emoji.
-Support different styles.
-Support tsv and custom delimiters.
-Able to generate markdown table (with --style markdown option).
v0.83.1
This is a bug-fix release with one important fix.
langs/i18n: Fix warning regression in i18n ececd1b1 @bep #8492
v0.83.0
Templates
Remove the FuzzMarkdownify func for now 5656a908 @bep
Output
Make the shortcode template lookup for output formats stable 0d86a32d @bep #7774
Only output mediaType once in docshelper JSON 7b4ade56 @bep #8379
Other
Regenerate docs helper a9b52b41 @bep
Regenerate CLI docs b073a1c9 @bep
Remove all dates from gendoc 4227cc1b @bep
Update getkin/kin-openapi v0.60.0 => v0.61. 3cc4fdd6 @bep
Update github.com/evanw/esbuild v0.11.14 => v0.11.16 78c1a6a7 @bep
Remove .Site.Authors from embedded templates f6745ad3 @jmooring #4458
Don't treat a NotFound response for Delete as a fatal error. f523e9f0 @vangent
Switch to deb packages of nodejs and python3-pygments 63cd05ce @anthonyfok
Install bin/node from node/14/stable 902535ef @anthonyfok
bump github.com/getkin/kin-openapi from 0.55.0 to 0.60.0 70aebba0 @dependabot[bot]
bump github.com/evanw/esbuild from 0.11.13 to 0.11.14 3e3b7d44 @dependabot[bot]
Update to Chroma v0.9.1 048418ba @caarlos0
Improve plural handling of floats eebde0c2 @bep #8464
bump github.com/evanw/esbuild from 0.11.12 to 0.11.13 65c502cc @dependabot[bot]
Revise the plural implementation 537c905e @bep #8454#7822
Update to "base: core20" 243951eb @anthonyfok
bump github.com/frankban/quicktest from 1.11.3 to 1.12.0 fe2ee028 @dependabot[bot]
bump google.golang.org/api from 0.44.0 to 0.45.0 316d65cd @dependabot[bot]
bump github.com/aws/aws-sdk-go from 1.37.11 to 1.38.23 b95229ab @dependabot[bot]
Correct function name in comment 0551df09 @xhit
Upgraded github.com/evanw/esbuild v0.11.0 => v0.11.12 057e5a22 @bep
Regen docs helper fd96f65a @bep
bump github.com/tdewolff/minify/v2 from 2.9.15 to 2.9.16 d3a64708 @dependabot[bot]
bump golang.org/x/text from 0.3.5 to 0.3.6 3b56244f @dependabot[bot]
Remove some unreachable code f5d3d635 @bep
bump github.com/getkin/kin-openapi from 0.39.0 to 0.55.0 0d3c42da @dependabot[bot]
Some performance tweaks for the HTML elements collector ef34dd8f @bep
Exclude comment and doctype elements from writeStats bc80022e @dirkolbrich #8396#8417
Merge branch 'release-0.82.1' 2bb9496c @bep
bump github.com/yuin/goldmark from 1.3.2 to 1.3.5 3ddffd06 @jmooring #8377
Remove duplicate references from release notes 6fc52d18 @jmooring #8360
bump github.com/spf13/afero from 1.5.1 to 1.6.0 73c3ae81 @dependabot[bot]
bump github.com/pelletier/go-toml from 1.8.1 to 1.9.0 7ca118fd @dependabot[bot]
Add webp image encoding support 33d5f805 @bep #5924
bump google.golang.org/api from 0.40.0 to 0.44.0 509d39fa @dependabot[bot]
bump github.com/nicksnyder/go-i18n/v2 from 2.1.1 to 2.1.2 7725c41d @dependabot[bot]
bump github.com/rogpeppe/go-internal from 1.6.2 to 1.8.0 5d36d801 @dependabot[bot]
Remove extraneous space from figure shortcode 9b34d42b @jmooring #8401
bump github.com/magefile/mage from 1.10.0 to 1.11.0 c2d8f87c @dependabot[bot]
bump github.com/google/go-cmp from 0.5.4 to 0.5.5 cbc24661 @dependabot[bot]
Disable broken pretty relative links feature fa432b17 @niklasfasching
Update go-org to v1.5.0 0cd55c66 @niklasfasching
bump github.com/jdkato/prose from 1.2.0 to 1.2.1 0d5cf256 @dependabot[bot]
bump github.com/spf13/cobra from 1.1.1 to 1.1.3 36527576 @dependabot[bot]
Add complete dependency list in "hugo env -v" 9b83f45b @bep #8400
Add hugo.IsExtended 7fdd2b95 @bep #8399
Also test minified HTML in the element collector 3d5dbdcb @bep #7567
Skip script, pre and textarea content when looking for HTML elements 8a308944 @bep #7567
Add slice syntax to sections permalinks config 2dc222ce @bep #8363
Upgrade github.com/evanw/esbuild v0.9.6 => v0.11.0 4d22ad58 @bep
Fixes
Templates
Fix where on type mismatches e4dc9a82 @bep #8353
Output
Regression in media type suffix lookup 6e9d2bf0 @bep #8406
Regression in media type suffix lookup e73f7a77 @bep #8406
Other
Fix multiple unknown language codes 7eb80a9e @bep #7838
Fix permalinks pattern detection for some of the sections variants c13d3687 @bep #8363
Fix Params case handling in where with slices of structs (e.g. Pages) bca40cf0 @bep #7009
Fix typo in docshelper.go 7c7974b7 @jmooring #8380
Try to fix the fuzz build 5e2f1289 @bep
v0.82.1
This is a bug-fix release with one important fix.
Regression in media type suffix lookup 6e9d2bf0 @bep #8406
v0.82.0
Enhancements
Templates
Add method mappings for strings.Contains, strings.ContainsAny 7f853003 @bep
Output
Make Type comparable ba1d0051 @bep #8317#8324
Add a basic benchmark 4d24e2a3 @bep
Other
Regenerate docs helper 86b4fd35 @bep
Regen CLI docs 195d108d @bep
Simplify some config loading code df8bb881 @bep
Update github.com/evanw/esbuild v0.9.0 => v0.9.6 57d8d208 @bep
Apply OS env overrides twice fc06e850 @bep
Attributes for code fences should be placed after the lang indicator only b725253f @bep #8313
Bump github.com/tdewolff/minify/v2 v2.9.15 35dedf15 @bep #8332
More explicit support link to discourse 137d2dab @davidsneighbour
Update to esbuild v0.9.0 1b1dcf58 @bep
Allow more spacing characters in strings 0a2ab3f8 @moorereason #8079#8079
Rename a test 35bfb662 @bep
Add a debug helper 6d21559f @bep
Add support for Google Analytics v4 ba16a14c @djatwood
Bump go.mod to Go 1.16 782c79ae @bep #8294#8210 Upgrade golang version for Dockerfile 5afcae7e @systemkern
Update CONTRIBUTING.md 60469f42 @bep
Handle attribute lists in code fences aed7df62 @bep #8278
Allow markdown attribute lists to be used in title render hooks cd0c5d7e @bep #8270
bump github.com/kyokomi/emoji/v2 from 2.2.7 to 2.2.8 88a85dce @dependabot[bot]
Fixes
Output
Fix output format handling for render hooks 18074d0c @bep #8176
Other
Fix OS env override for nested config param only available in theme 7ed56c69 @bep #8346
Fix new theme command description 24c716ca @rootkea
Fix handling of utf8 runes in nullString() f6612d8b @moorereason
Fixes#7698. 01dd7c16 @gzagatti
Fix autocomplete docs c8f45d1d @bep
v0.81.0
Make the build green again fe77f743 @bep
Regenerate internal templates c6080655 @bep
Update date logic of opengraph and schema internal templates ffd9dac4 @djatwood
Synch Go templates fork with Go 1.16dev cf3e077d @bep
Exclude pages without Permalink from sitemap 4867cd1d @Jaza
Add default user-agent header for getJSON requests 35def0ae @peacecwz
remove 1mb limit for readFile. ee9c1367 @avdva
Do not return errors in substr for out-of-bounds cases 8a26ab0b @moorereason #8113
Add missing test scenario for strings.Substr 788e50ad @moorereason
Regen CLI docs 9e99950c @bep
Regen docs helper 1b364b00 @bep
Run go mod tidy 88b93a09 @bep
Add arm64 to Darwinextended build and add vendorInfo 29fb456c @bep #8003
Update Travis, GitHub, CircleCI and Snap to Go 1.16 (only) 718fba7d @bep
Pull in latest Go 1.16 template source e77b2e3a @bep
Add breaking tests for "map read and map write in templates" b5485aea @bep #7293
Pull in latest Go template source ccb822eb @bep
Expand template newline testcase to commands 21e9eb18 @bep
Add a test case for Go 1.16 template action newlines ae57ba6a @bep
Update github.com/tdewolff/minify/v2 v2.6.2 => v2.9.13 66beac99 @bep #8258
bump github.com/frankban/quicktest from 1.11.2 to 1.11.3 968dd7a7 @dependabot[bot]
bump github.com/getkin/kin-openapi from 0.32.0 to 0.39.0 38f29e81 @dependabot[bot]
bump github.com/aws/aws-sdk-go from 1.36.33 to 1.37.11 cd87813a @dependabot[bot]
bump github.com/sanity-io/litter from 1.3.0 to 1.5.0 4e815b06 @dependabot[bot]
bump github.com/olekukonko/tablewriter from 0.0.4 to 0.0.5 652a59d3 @dependabot[bot]
Update to esbuild v0.8.46 84f0ec7f @bep
Add config option modules.vendorClosest bdfbcf6f @bep #8235#8242
bump google.golang.org/api from 0.26.0 to 0.40.0 a9b0fea6 @dependabot[bot]
Change version string format and add VendorInfo to help with issue triaging e8df0977 @anthonyfok
Allow absolute paths for any modules resolved via project replacement 3a5ee0d2 @bep #8240
Throw an error running hugo mod vendor on mountless module 4ffaeaf1 @bep
Add PowerShell completion support 5f621df2 @anthonyfok #8122
Refer to mage instead of make in comment regarding commitHash 7118f89c @anthonyfok
Add attributes support for blocks (tables etc.) 2681633d @bep #7548
Update to Goldmark v1.3.2 1b247282 @bep #8143
Update to Dart Sass Protocol beta6 441b11be @bep
Write to stdout by default d36fd5b3 @benmezger
Remove powershell support a7c515e1 @benmezger
Add zsh, fish and powershell completion support 216b00f3 @benmezger #4296
Enable NPM tests on Windows 14494379 @bep #8196
Update to esbuild v0.8.39 440fdb0e @bep #8189
Trim whitespace in elements written to hugo_stats.json b2a48dce @pmatiash #7958
bump github.com/aws/aws-sdk-go from 1.35.0 to 1.36.33 2f9dadae @dependabot[bot]
Remove mention of a file size limit for readFile ed3071b7 @avdva
Add Inject config option 32b86076 @bep #8164
Add Shims option e19a046c @bep #8165
bump github.com/spf13/afero from 1.4.1 to 1.5.1 07ad283f @eclipseo
Add external source map support to js.Build and Babel 2c8b5d91 @richtera #8132
Run go mod tidy 4d2b6fc4 @bep
Update go-org to v1.4.0 212e5e55 @niklasfasching
Adjust log level 4fdec67b @bep
Add temporary patch to fix template data race 9650e568 @bep #7293
Fix race condition in text template baseof 241b7483 @moorereason
Fix metrics hint tracking 0004a733 @moorereason #8125
Fix potential path issue on Windows b60e9279 @bep
Fix some humanize issues bf55afd7 @susiwen8 #7912
Fix handling of legacy attribute config e6dd3128 @bep #7548
Support translation files with suffix *.yml 92c6c404 @bep #8212
Fix nilpointer in js.Build error handling a1fe552f @bep #8162
Priority is a pure-Python implementation of the priority logic for HTTP/2, set
out in RFC 7540 Section 5.3 (Stream Priority). This logic allows for clients
to express a preference for how the server allocates its (limited) resources to
the many outstanding HTTP requests that may be running over a single HTTP/2
connection.
1.8:
Backwards compatibility breaks and deprecations
Please manually add any backwards compatibility breaks or deprecations here, in addition to the automatic listing below.
assumptions
AskHandler(), register_handler() and remove_handler() are deprecated. Handler now must be multipledispatch instance.
parsing
Parsing of "Q" returns AssumptionKeys instance in assumptions module. This means that sympify("Q") will no longer return a symbol.
Changes
assumptions
Q.infinite now correctly evaluates to True for oo, -oo, and zoo.
Assumption predicates now correctly evaluates to None for S.NaN.
Relational objects do not need to be wrapped by Q.is_true to be asked or refined anymore
Q.is_true wrapping over AppliedPredicate now just return the argument.
refine arg(x) when x is real and nonzero
assumptions/relation module is introduced. This module implements binary relation as predicate.
AskHandler(), register_handler() and remove_handler() are deprecated. Handler now must be multipledispatch instance.
Predicate now uses a single handler which is multipledispatch instance.
Predicate can now take multiple arguments.
Predicate("...") now returns UndefinedPredicate instance. To define a predicate, you must make a subclass of Predicate.
calculus
Using maximum with a piecewise expression over a domain no longer fails due to a bug fix in Piecewise.as_expr_set_pairs.
codegen
allowing for multi-dimensional arrays as arguments/locals in c code generation
create_expand_pow_optimization is now customizable with respect to requirement on base.
Support flattening of elementwise additions of array expressions.
Fixes to array-expressions in order to properly work with ZeroArray and ZeroMatrix.
Fixing matrix expression recognition from array-expressions.
Minor fixes to the way the AST of array expressions is built
Add normalization of CodegenArrayDiagonal when it's nested with CodegenArrayPermuteDims and CodegenArrayContraction.
Increased support for the normalization of array expressions and permutations of indices.
parse_matrix_expression( ) is now able to parse traces of matrices.
combinatorics
Added a section to the permutation docs about containment in permutation groups.
concrete
Improved infinite summation capability by adding residue formula.
A bug leading to incorrect evaluation of a summation of an exponential function was fixed.
core
Fixed a bug in Pow._eval_nseries that added Order terms to exact expansions
Fixed a bug in Expr.round that could lead to infinite recursion in integrate.
Removed deprecated ClassRegistry
get_integer_part no longer has a threshold on the approximation to closest integer based on difference, allowing floor to give more accurate results for smaller evalf precisions also
A bug causing match to fail for expressions with different signs was fixed. Previously this resulted in solve raising an exception for some inputs.
Make S(0.0) == S.false return False
.refine() method is moved from Expr to Basic.
gcd correctly handles unevaluated Mul
Fixed a bug leading to infinite recursion in the old assumptions under evaluate(False).
Fixed _eval_is_zero() functionality when imaginary numbers are involved.
Kind classification of objects is introduced. This feature is experimental, and can be replaced or deleted in the future.
Make class Eq with sets as arguments work with simplify().
Fixed a few broken cases of expr.is_integer
functions
Implemented Riemann Xi function
riemaan xi function
Added nseries expansion for besselj and bessely
Fixed leading term calculation of sin functions to handle angles outside (-pi, pi)
Added aseries expansion to error functions
Changes _eval_nseries of Abs to no longer return a Piecewise
Modified _eval_nseries to handle infinity and added _eval_as_leading_term in floor and ceiling
Added Generalized Incomplete, Generalized Regularized and Central Beta functions
Added _eval_nseries support to sign
Fixed assumption is_algebraic for exponentials with rational multiples of I*pi to be True.
geometry
Fix AssertError for vertical tangent
Geometric entities with symbolic coordinates will not be printed in SVG.
integrals
Fixed a bug that led to RecursionError in integrals involving hyperbolic functions.
The heurisch integration method was made faster by improvements in the sparse linear systems solver.
A bug leading to incorrect results when integrating Piecewise expressions where a condition simplifies to True was fixed.
logic
simplify_logic faster in most cases, especially for larger expressions.
refine() on Boolean objects reduces them to true or false if the truth value can be determined.
matrices
Fixed a bug that led to the wrong derivative result in matrix expressions.
The eye and zero functions have been made much faster for large matrices.
Added two new functions upper_triangular and lower_triangular, that return upper and lower triangular parts of a matrix.
Minus one, integers, rational numbers multiplied with MatAdd is automatically distributed.
Added function returning Wilkinson matrix
Implemented Singular Value decomposition for matrices
Implemented Upper Hessenberg Decomposition for a matrix
eigenvals, eigenvects without radical solution will be returned as CRootOf
Added function to calculate Generalized Schur Complement for Block Matrices
Added functions to compute LDU, UDL and LU decompositions for Block Matrices
Fixed issues with dot product for Matrix.orthogonalize with complex vectors.
Fixed zero division issues for Matrix.QRdecomposition with zero columns coming first than nonzero columns.
Added a function to compute the permanent of a matrix
Changed behaviour of eq() of class DenseMatrix
det has a new option 'gauss-ge' which is much faster in many cases
ntheory
Added documentation of ecm and qs functions
Fixed a bug in the is_gaussian_prime function for python complex numbers (e.g. 1+1j).
primerange now accepts a single argument i.e., primerange(input_arg) is valid and is same as primerange(2, input_arg).
Added motzkin numbers
parsing
Fixed issue with parsing logarithm bases without curly braces
Fix parse_expr parsing of expressions with methods when using the implicit_multiplications transformation.
Include the transformed code in the error message when the evaluation in parse_expr fails.
Extended the LaTeX parser with support for complex conjugates (via \overline{...}).
Latex parser does not evaluate sqrt expressions anymore.
physics.continuum_mechanics
make beam module compute correctly internal forces
physics.optics
Fixed bugs related to basic operations on TWave
physics.quantum
WignerD now evaluates to KroneckerDelta in some cases.
physics.units
Fix bug when input argument to a function is an integer
Change default behavior for functions (all function arguments must be dimensionless by default)
sin, cos, tan, cot, sec, and csc functions may have a dimensionless or angle input argument
Exponents must now be dimensionless
Constants such as pi and E are now treated as dimensionless (raised exception previously)
Numbers with an imaginary component are now treated as dimensionless (raised exception previously)
Fixed a bug with derived units and dimensions in check_dimensions.
Fix bug in convert_to returning wrong units in some cases where the linear equation system between canonical units is unsolvable.
physics.vector
Fix documentation for v1pt_theory
Introduced new methods on ReferenceFrame: .orient_axis(), .orient_explicit(), .orient_body_fixed(), .orient_space_fixed(), and .orient_quaternion(). .orient() calls out to each new method and it is recommended to use the new methods.
Added .xreplace() to Vector Class.
Added .xreplace() to Dyadic Class.
Added .evalf() to Vector class
Added .evalf() to Dyadic class
plotting
Added handling for OverflowError (when plotting functions like exp(1/x)).
polys
Added internal representation as both dense and sparse matrix
Added docstrings for Domain Matrix class
Add zeros method to DomainMatrix
A new sparse implementation of DomainMatrix is added.
make is_disjoint strict so that inequalities evaluated with solve() return consistent results
The DomainMatrix class has moved from sympy.polys.domainmatrix to sympy.polys.matrices and should now be imported as from sympy.polys.matrices import DomainMatrix.
A new polys FiniteExtension domain is added.
numberfields: implemented new algorithm for primitive_element in case ex=True.
added boilerplate index method for FracField
Solved bug in Poly.replace
Solve a bug in polytools.degree.
Use assumption system instead of structural equality check in __bool__ method of Expression domain element (fixing cases where Poly(...).is_zero would incorrectly return False)
printing
The pretty printer was made faster when printing large sequences (e.g. tuples, sets etc).
Fixed a bug which led to latex printing error in singularity function expressions.
Replaced the Theano printer with an Aesara printer
Symbols with Unicode character names and no underscores, like ω0 now properly pretty print subscripts.
Fix the printing of the vertical bar in ImageSet, ConditionSet, and ComplexRegion so that it is the full height in the pretty and LaTeX printers.
Fix the tag for the degree of a root with a rational base in MathML output.
irrational powers are no longer printed with square root sign, they are printed as fractional powers
Allow spreading assignments across multiple symbols when printing multi-member objects.
Support various array constructor types when printing arrays to GLSL.
Fixes a bug when printing negative expressions to GLSL with operators printed as functions.
Support a custom 0 substitution for printing expressions representing various GLSL types.
make cxxcode correctly print the first argument of Min/Max functions
sets
Added basic denesting functionaility for sets of the form ConditionSet(x, Contains(x, ...)).
ConditionSet.contains(x) now returns False if x is not in the base set (even if its substitution into the condition will cause an error).
FiniteSet.evalf with a subs argument now does the substitution. Previously, the argument was ignored.
Add .simplify to FiniteSet.
Make 'is_subset' work for ProductSet
changed behavior of Rationals.contains(float) to indeterminate
tests modified to include new behavior
.evalf() precisions with x and FiniteSet(x) is same now.
simplify
Fix simplify calls sympify without rational parameter
TRmorrie now takes powers of cos terms into account
solvers
Fixed a bug in solve that expanded hyperbolic function constants to equivalent exp form.
Handle x**r=0 case in invert_complex
Fixed a bug in solveset, which led to infinite recursion for solving some expressions involving radicals.
The new sparse DomainMatrix implementation is used in linsolve to make it much faster when solving large sparse systems of linear equations.
Modified symbols sorting in solvers._solve_system to ensure solve and linsolve solve the same way
Added solver for 2nd order nonlinear autonomous ODE.
speed improvement in a substep of rsolve_hyper (when computing constant solutions to constant coefficient recurrences).
Fixed incorrect solutions from rsolve for higher order recurrences
stats
Refactory and simplification of sampling backends for random variables.
Expectation can now be calculated across multiple Uniform RVs evaluating to zero
Implemented Matrix Student's t-distribution
Fixed simplification bug in Stochastic Processes by introducing abstract Distribution class
API changed for StochasticProcess.distribution which now expects a timestamp argument instead of RandomIndexedSymbol object.
Implemented FlorySchulz Distribution
implemented LogCauchy Distribution
Implemented Logit-Normal probability distribution
Fixes cdf computation of Discrete random variables by using integer limits
Added 2 new distributions in frv_types.
added support for fundamental matrix for regular markov chains
Added support for multiple RandomIndexedSymbols in DiscreteMarkovChain
tensor
Introduced objects ArraySymbol and ArrayElement for array expressions equivalent to MatrixSymbol and MatrixElement in the matrix expression module.
shape() function is introduced in array module.
Add class ZeroArray for array expressions of zero-valued elements.
Make Array differentiation(derive_by_array) work with non sympy expressions.
Added tensordiagonal( ) function to perform diagonalization of array expressions.
Adding an array with any other type now consistently gives NotImplemented.
utilities
Added official support for using CuPy to GPU accelerate lambdify functions.
Added Replacer class to simplify the creation of replacement expressions with MatchPy.
Added tests for optional parameter in MatchPy patterns.
Added string printers for MatchPy-compatible wildcards in sympy.utilities.matchpy_connector
Added WildDot, WildPlus and WildStar classes to MatchPy connector. These classes correspond to the dot, dot-plut and dot-star expressions in regular expression, but operate on SymPy expression trees and are aware of associative and commutative properties, features supported through the MatchPy library.
minlex no longer accepts is_set or small arguments
minlex and least_rotation now accept key= arguments similar to sorted.
vector
Fixed a bug with integral over ImplicitRegion objects
other
Expanding documentation to include all class members with docstrings
--1.2.0--
Released February 1, 2021
Features and optimizations:
* Support @ operator for matrix multiplication (Max Gaukler)
* Add eta() implementing the Dedekind eta function
* Optimized the python_trailing function (adhoc-king)
* Implement unary plus for matrices (Max Gaukler)
* Improved calculation of gram_index (p15-git-acc)
Compatibility:
* Enable sage backend by default only if SAGE_ROOT is set (Pauli Virtanen)
* Fix syntax warnings on CPython 3.8 (Sergey B Kirpichev)
* Changed version requirements to Python 2.7 and 3.4 or later
(Sergey B Kirpichev)
* Improvements to the setup and test code (Sergey B Kirpichev)
* Fix sys.version comparisons for compatibility with Python 3.10 (Jakub Wilk)
* Fixes to Python2/3 compatibility for printing (Christian Clauss)
Bug fixes:
* Fix a possible division by zero in shanks() (Pascal Hebbeker)
* Fixed indexing errors in deHoog, Knight & Stokes inverse laplace
transform algorithm (Kris Kuhlman)
* Corrected branch cuts of the elliprj() function in some cases
* Fix initialization of iv.matrix from non-interval matrix (Max Gaukler)
* Preserve function signatures in PrecisionManager (Viet Tran)
* Implemented float and complex conversions for ivmpf
(Jonathan Warner)
* Fixed issue with scalar-matrix multiplication for interval matrices
(Jonathan Warner)
* Fix estimation of quadrature error with multiple subintervals (Tom Minka)
* Fixed a problem with the defun decorators (Sergey B Kirpichev)
* Fix eigenvalue sorting by absolute value (Georg Ostrovski)
Cleanup:
* Documentation corrections (Paul Masson, S.Y. Lee)
* Remove inaccessible logic in fsum/fdot (Sergey B Kirpichev)
* Remove broken force_type option for matrix constructor (Max Gaukler)
* Fix text of the BSD license in LICENSE (Sergey B Kirpichev)
* Minor code cleanup (Frédéric Chapoton)
* Removed old, unused code
1.20.3:
BUG: Correct ``datetime64`` missing type overload for ``datetime.date``
MAINT: Remove ``__all__`` in favor of explicit re-exports
BLD: Strip extra newline when dumping gfortran version on MacOS
BUG: fix segfault in object/longdouble operations
MAINT: Use towncrier build explicitly
MAINT: Relax certain integer-type constraints
MAINT: Remove unsafe unions and ABCs from return-annotations
MAINT: Allow more recursion depth for scalar tests.
BUG: Initialize the full nditer buffer in case of error
BLD: remove unnecessary flag ``-faltivec`` on macOS
MAINT, CI: treats _SIMD module build warnings as errors through...
BUG: for MINGW, threads.h existence test requires GLIBC > 2.12
BUG: Make changelog recognize gh- as a PR number prefix.
REL, DOC: Prepare for the NumPy 1.20.3 release.
BUG: Fix failing mypy test in 1.20.x.
Version 1.6.1
-------------
No code changes with respect to 1.6
* Migrate CI to GitHub actions
* Fix release
Version 1.6
-----------
* Add peek support
* Remove py2 support
* Full test coverage
2021-01-05 -- 1.8.1
* feature: add tox helpers to make pipy and debian releases
* fix: use TypedDict if python version > 3.8 only, otherwise use a Dict
(TypedDict were imported from typing_extension 3.7.4, which is not
available on debian buster)
2020-11-22 -- 1.8.0
* deprecation: add subclass to DeprecationWarning with structured
information (TargetRenamedDeprecationWarning,
TargetDeprecatedDeprecationWarning, TargetRemovedDeprecationWarning,
TargetMovedDeprecationWarning)
* deprecation: add tests to ensure that DeprecationWarning target the
correct line and the correct file
* deprecation: add types annotations
* declare that logilab.common ships type annotations (py.typed file)
* various bug fixes
2020-09-03 -- 1.7.3
* type: declare that logilab-common ship type annotations
* make the build reproducible
* fix(deprecation): stacked decorators breaks getting the real callable
__name__ attribute
* fix: in some situation (using several deprecation functions), renaming
deprecation utils failed to point to the correct new name and used random
internal names of the module
2020-06-24 -- 1.7.2
* fix(deprecation): rollback to old class_deprecation being a class behavior
2020-06-11 -- 1.7.1
* fix: import error on re.Pattern with python < 3.7
2020-06-10 -- 1.7.0
* logilab-common requires python 3.6 now
* greatly improve our CI and migrate it to heptapod/gitlab-ci
* black the whole code base
* move test suit to pytest
* use check-manifest and fix related bugs in MANIFEST.in
* integrates flake8 and please the flake8 gods
* various fixes
* class_deprecation is not a class anymore
* pytest 5.4.2 breaks tests, pin to 5.4.1 for now
2020-05-25 -- 1.6.4
* fix: rollback to old class_deprecation being a class behavior
* fix: @functools.wraps broke callable_renamed, write a @lazy_wraps and
use it everywhere in logilab.common.deprecation
* add docstring to LazyObject
2020-05-11 -- 1.6.3
* fix: metaclass conflict in class_deprecated
2020-05-11 -- 1.6.2
* fix: explicitly requires python 3.6 in setup.py
2020-05-01 -- 1.6.1
* bug fix, bad usage of callable_renamed
2020-04-30 -- 1.6.0
* logilab-common requires python >= 3.6 now
* use pyannotates to introduces types in all the modules
* introduce a list of new functions in logilab.common.deprecation: callable_renamed, attribute_renamed, argument_renamed, argument_remove
* renamed "renamed" to "callable_renamed", "deprecated" to
"callable_deprecated", "moved" to "callable_moved" for coherence
* refactor the whole logilab.common.deprecation to simplify its code
* automatically detect from which modules a deprecated utils is called
* correctly display the line where a deprecated utils is used
* various small fixes, thx mypy
2019-12-04 -- 1.5.2
* documentation is now available at https://logilab-common.readthedocs.io/
* drop python2 support, python >= 3.3 is the new required version
* therefor, drop dependency on six
* drop rpm packaging
* registry: add a Registry.add_select_best_listener method to subscribe to
the result of a _select_best of a Registry.
* shellutils: deprecate 'input' as argument of RawInput in favor of
'input_function'
Change log:
0.5.4
======
- New Features:
- Add --line/-l and --column/-c number (#107, !83)
- Port to GtkSourceView 4 (#55, #80, !10)
- Bug Fixes:
- Delay request to scroll to cursor for the correct active view
- Monitor hardlinks with glib 2.56.2 (#110, !82)
- Transfer encoding from remote to primary instance (#109)
- Prevent a crash when no language is found
- Make window require attention when opening new tabs (#106, #93, !81)
- Fix BOM array (!80)
- Correctly initialize toolbar style combo box (#103)
- Allow checking parent sources when looking up schema (#101)
- Fix missing parameter to "select-all" signal (!79)
- Translation Updates:
Hebrew, Indonesian, Spanish, Swedish
This enables use of MPI compiler wrappers present in the host
system via MPI_TYPE=native. Also, it checks for conflicts with
a preintalled different MPI choice from pkgsrc and.
The package needs Python 3.5 or newer, and apparently this is the better way to
register it; no functional change otherwise intended.
As suggested by leot@; thanks!
-the default (non prefixed) search is now "path fuzzy" instead of "name fuzzy".
You can still change the default mode and mode bindings in the config. This was
done after a survey in chat.
-new "unordered tokens" search type: t/ab,cd searches for tokens "ab" and "cd"
in any order and case insensitive in the subpath, matches for example
src/dcd/Bab.rs - Fix#378
-fix search modes configuration removing all default mappings - Fix#383
-conf / quit_on_last_cancel to allow quitting with esc when there's nothing
to cancel - Fix#380
-new parent skin entry for the part of the sub-path before the file name
(visible when you search on subpath)
-when a content search has been done, opening a file with a compatible command
(like the standard :edit) opens on the first line with a match