Opened 6 years ago

Closed 6 years ago

#21893 closed defect (fixed)

Properly initialize symbolic rings

Reported by: saraedum Owned by:
Priority: minor Milestone: sage-7.5
Component: symbolics Keywords:
Cc: Merged in:
Authors: Julian Rüth Reviewers: David Roe
Report Upstream: N/A Work issues:
Branch: 36c6bb0 (Commits, GitHub, GitLab) Commit: 36c6bb000fb994851cb4b8e53d2e84cf1e47829e
Dependencies: Stopgaps:

Status badges

Description (last modified by saraedum)


sage: f(x) = 1
sage: TestSuite(f.parent()).run()
sage: 'sum' in dict(f.parent())
sage: f.parent().sum

This is because this symbolic ring does not call its super classes __init__ and therefore it does not inherit correctly the methods of its category.

Also, some tests do not pass because the pickling provided by factory is not properly used:

sage: f.parent()._test_pickling()

Change History (5)

comment:1 Changed 6 years ago by saraedum

  • Branch set to u/saraedum/properly_initialize_symbolic_rings

comment:2 Changed 6 years ago by saraedum

  • Commit set to 36c6bb000fb994851cb4b8e53d2e84cf1e47829e
  • Description modified (diff)

New commits:

a770337SymbolicRing is a singleton
901bae3SymbolicRing is a singleton
5979aefCallableSymbolicExpressionRing_class get only created through a factory
5d32dbdProperly call the super class constructors of CallableSymbolicExpressionRing_class
36c6bb0Run test suites for symbolic rings

comment:3 Changed 6 years ago by saraedum

  • Status changed from new to needs_review

The tests in symbolic/ pass. Let's see what the patchbot thinks.

The commits should make sense one by one. The reviewer might want to review them individually.

comment:4 Changed 6 years ago by roed

  • Reviewers set to David Roe
  • Status changed from needs_review to positive_review

Looks good once patchbot approves.

comment:5 Changed 6 years ago by vbraun

  • Branch changed from u/saraedum/properly_initialize_symbolic_rings to 36c6bb000fb994851cb4b8e53d2e84cf1e47829e
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.