Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inherit __richcmp__ and __cmp__ in subclasses of Element #18329

Closed
jdemeyer opened this issue Apr 29, 2015 · 76 comments
Closed

Inherit __richcmp__ and __cmp__ in subclasses of Element #18329

jdemeyer opened this issue Apr 29, 2015 · 76 comments

Comments

@jdemeyer
Copy link

Use the __typeinit__ mechanism introduced by #18330 to inherit __cmp__ and __richcmp__ even if those would not be inherited by default.

Upstream patch added: cython/cython#383

Upstream: Fixed upstream, but not in a stable release.

CC: @jpflori

Component: coercion

Author: Jeroen Demeyer

Branch: f6058e7

Reviewer: Jean-Pierre Flori

Issue created by migration from https://trac.sagemath.org/ticket/18329

@jdemeyer jdemeyer added this to the sage-6.7 milestone Apr 29, 2015
@jdemeyer
Copy link
Author

Branch: u/jdemeyer/inherit_richcompare

@jdemeyer
Copy link
Author

Dependencies: #17890, #18321, #18322, #18330

@jdemeyer
Copy link
Author

Commit: 3bb7361

@jdemeyer
Copy link
Author

Last 10 new commits:

1ad339bImplement _rich_to_bool as inline function instead of member function
17bd067Merge tag '6.7.beta2' into t/17890/ticket/17890
313a400Optimize rich_to_bool_sgn
629f6a5Improve comparisons for permutation groups
0d1e049Improve _richcmp and documentation
39273f1Fix doctest formatting
04570b3Fix bad doctest in etaproducts
3976f2cAdd pointers for special uses of __richcmp__
d977150Merge remote-tracking branch 'origin/u/jdemeyer/ticket/17890' into u/jdemeyer/don_t_cimport_type
3bb7361Add hook for PyType_Ready

@jdemeyer
Copy link
Author

Changed branch from u/jdemeyer/inherit_richcompare to none

@jdemeyer
Copy link
Author

Changed dependencies from #17890, #18321, #18322, #18330 to #18321, #18322, #18330

@jdemeyer

This comment has been minimized.

@jdemeyer
Copy link
Author

Changed commit from 3bb7361 to none

@jdemeyer
Copy link
Author

jdemeyer commented May 6, 2015

Branch: u/jdemeyer/ticket/18329

@jdemeyer
Copy link
Author

jdemeyer commented May 8, 2015

New commits:

5d4b11eDon't cimport "type"
bb98fd0_cmp should try `_richcmp_` if `_cmp_` failed
30fe462Cython metaclass support
d4ba872Add check for tp_basicsize
3ec2842Revert changes to coerce_dict
2698d89Merge commit '5d4b11e4ed2b4053290386b87f666c88bb606782'; commit 'bb98fd07ee04b18a4ec329aeb2bf061dab4f7d6d'; commit '3ec2842529f4aa7763b2db0a7c6556c5bb437c14' into ticket/18329
db60d48Meteclass for inheriting comparison functions

@jdemeyer
Copy link
Author

jdemeyer commented May 8, 2015

Commit: db60d48

@jdemeyer
Copy link
Author

jdemeyer commented May 8, 2015

Changed dependencies from #18321, #18322, #18330 to #18321, #18322, #18330, #18380

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 8, 2015

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

4073a17Meteclass for inheriting comparison functions

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 8, 2015

Changed commit from db60d48 to 4073a17

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 8, 2015

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

8f60acbAdd class CombinatorialElement
d826520Use LazyFormat for `_cmp_` exception
ac9ca1cUpdate comment
6e6870bAdd some needed casts
bc4d957Remove TypeInitMetaclass, add some documentation
70908cbComment
19f3337Merge commit '5d4b11e4ed2b4053290386b87f666c88bb606782'; commit 'ac9ca1c83737253b380a79cde33b4908a51d0ead'; commit '70908cbbaa5b4ec6c6f5dc7332d0f7c1379b511e' into HEAD
3481133Metaclass for inheriting comparison functions

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 8, 2015

Changed commit from 4073a17 to 3481133

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 8, 2015

Changed commit from 3481133 to 6c712ef

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 8, 2015

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

6c712efMetaclass for inheriting comparison functions

@jdemeyer
Copy link
Author

jdemeyer commented May 9, 2015

Changed dependencies from #18321, #18322, #18330, #18380 to #18321, #18322, #18330, #18380, #18387

@jdemeyer
Copy link
Author

jdemeyer commented May 9, 2015

comment:10

Almost there :-)

----------------------------------------------------------------------
sage -t src/sage/modular/modform_hecketriangle/hecke_triangle_group_element.py  # 693 doctests failed
sage -t src/sage/combinat/root_system/root_lattice_realizations.py  # 1 doctest failed
sage -t src/sage/graphs/generic_graph.py  # 2 doctests failed
sage -t src/sage/modular/modform_hecketriangle/readme.py  # 364 doctests failed
sage -t src/sage/modular/modform_hecketriangle/abstract_space.py  # 558 doctests failed
sage -t src/sage/combinat/k_tableau.py  # 27 doctests failed
sage -t src/sage/modular/modform_hecketriangle/graded_ring_element.py  # 593 doctests failed
sage -t src/sage/combinat/designs/database.py  # 6 doctests failed
sage -t src/sage/combinat/skew_tableau.py  # 14 doctests failed
sage -t src/sage/geometry/polyhedron/base.py  # 1 doctest failed
sage -t src/sage/combinat/partition.py  # 22 doctests failed
sage -t src/sage/schemes/projective/projective_morphism.py  # 4 doctests failed
sage -t src/sage/schemes/elliptic_curves/isogeny_small_degree.py  # 2 doctests failed
sage -t src/sage/modular/modform/element.py  # 23 doctests failed
sage -t src/sage/combinat/ncsf_qsym/ncsf.py  # 7 doctests failed
sage -t src/sage/schemes/toric/chow_group.py  # 3 doctests failed
sage -t src/sage/algebras/steenrod/steenrod_algebra.py  # 7 doctests failed
sage -t src/sage/modular/abvar/abvar.py  # 6 doctests failed
sage -t src/sage/combinat/sf/sfa.py  # 1 doctest failed
sage -t src/sage/combinat/set_partition.py  # 5 doctests failed
sage -t src/sage/modular/local_comp/type_space.py  # 50 doctests failed
sage -t src/sage/combinat/posets/posets.py  # 53 doctests failed
sage -t src/sage/combinat/root_system/weight_space.py  # 3 doctests failed
sage -t src/sage/combinat/sf/k_dual.py  # 3 doctests failed
sage -t src/sage/modular/abvar/homspace.py  # 1 doctest failed
sage -t src/sage/matrix/matrix2.pyx  # 5 doctests failed
sage -t src/sage/modular/modform_hecketriangle/hecke_triangle_groups.py  # 224 doctests failed
sage -t src/sage/schemes/toric/variety.py  # 2 doctests failed
sage -t src/sage/categories/semigroups.py  # 1 doctest failed
sage -t src/sage/algebras/iwahori_hecke_algebra.py  # 2 doctests failed
sage -t src/sage/schemes/elliptic_curves/ell_point.py  # 70 doctests failed
sage -t src/sage/modular/hecke/submodule.py  # 2 doctests failed
sage -t src/sage/doctest/forker.py  # 1 doctest failed
sage -t src/sage/modular/local_comp/local_comp.py  # 43 doctests failed
sage -t src/sage/combinat/ncsym/ncsym.py  # 7 doctests failed
sage -t src/sage/categories/pushout.py  # 3 doctests failed
sage -t src/sage/modules/free_module_element.pyx  # 4 doctests failed
sage -t src/sage/combinat/ncsf_qsym/qsym.py  # 4 doctests failed
sage -t src/sage/combinat/rigged_configurations/kr_tableaux.py  # 9 doctests failed
sage -t src/sage/schemes/elliptic_curves/ell_curve_isogeny.py  # 4 doctests failed
sage -t src/sage/modular/modform_hecketriangle/subspace.py  # 100 doctests failed
sage -t src/sage/combinat/tableau_tuple.py  # 34 doctests failed
sage -t src/sage/schemes/toric/morphism.py  # 1 doctest failed
sage -t src/sage/combinat/descent_algebra.py  # 4 doctests failed
sage -t src/sage/combinat/tableau.py  # 23 doctests failed
sage -t src/sage/combinat/crystals/affine_factorization.py  # 1 doctest failed
sage -t src/sage/modular/modform_hecketriangle/space.py  # 203 doctests failed
sage -t src/sage/rings/polynomial/polynomial_element.pyx  # 21 doctests failed
sage -t src/sage/combinat/designs/orthogonal_arrays_build_recursive.py  # 12 doctests failed
sage -t src/sage/coding/linear_code.py  # 20 doctests failed
sage -t src/sage/combinat/permutation.py  # 26 doctests failed
sage -t src/sage/tests/french_book/numbertheory.py  # 1 doctest failed
sage -t src/sage/algebras/hall_algebra.py  # 4 doctests failed
sage -t src/sage/structure/parent.pyx  # 5 doctests failed
sage -t src/sage/geometry/hyperplane_arrangement/arrangement.py  # 3 doctests failed
sage -t src/sage/categories/finite_dimensional_algebras_with_basis.py  # 7 doctests failed
sage -t src/sage/modular/modsym/ambient.py  # 9 doctests failed
sage -t src/sage/combinat/root_system/integrable_representations.py  # 1 doctest failed
sage -t src/sage/schemes/hyperelliptic_curves/hyperelliptic_finite_field.py  # 34 doctests failed
sage -t src/sage/combinat/crystals/kirillov_reshetikhin.py  # 2 doctests failed
sage -t src/sage/combinat/sf/new_kschur.py  # 4 doctests failed
sage -t src/sage/combinat/symmetric_group_algebra.py  # 7 doctests failed
sage -t src/sage/combinat/crystals/littelmann_path.py  # 2 doctests failed
sage -t src/sage/combinat/root_system/type_relabel.py  # 2 doctests failed
sage -t src/sage/combinat/root_system/ambient_space.py  # 1 doctest failed
sage -t src/sage/combinat/skew_partition.py  # 7 doctests failed
sage -t src/sage/combinat/root_system/type_affine.py  # 3 doctests failed
sage -t src/sage/categories/coxeter_groups.py  # 1 doctest failed
sage -t src/sage/combinat/rigged_configurations/rigged_configuration_element.py  # 7 doctests failed
sage -t src/sage/combinat/quickref.py  # 1 doctest failed
sage -t src/sage/combinat/sf/jack.py  # 7 doctests failed
sage -t src/sage/combinat/partition_tuple.py  # 7 doctests failed
sage -t src/sage/combinat/designs/difference_family.py  # 5 doctests failed
sage -t src/sage/groups/matrix_gps/finitely_generated.py  # 1 doctest failed
sage -t src/sage/modular/local_comp/smoothchar.py  # 8 doctests failed
sage -t src/sage/combinat/root_system/type_marked.py  # 2 doctests failed
sage -t src/sage/schemes/elliptic_curves/ell_generic.py  # 8 doctests failed
sage -t src/sage/geometry/triangulation/point_configuration.py  # 1 doctest failed
sage -t src/sage/combinat/sf/macdonald.py  # 3 doctests failed
sage -t src/sage/combinat/yang_baxter_graph.py  # 1 doctest failed
sage -t src/sage/groups/matrix_gps/linear.py  # 1 doctest failed
sage -t src/sage/combinat/alternating_sign_matrix.py  # 3 doctests failed
sage -t src/sage/combinat/root_system/weyl_characters.py  # 3 doctests failed
sage -t src/sage/algebras/nil_coxeter_algebra.py  # 2 doctests failed
sage -t src/sage/combinat/rigged_configurations/rigged_configurations.py  # 3 doctests failed
sage -t src/sage/schemes/elliptic_curves/ell_finite_field.py  # 23 doctests failed
sage -t src/sage/combinat/root_system/associahedron.py  # 1 doctest failed
sage -t src/sage/modular/modform_hecketriangle/abstract_ring.py  # 513 doctests failed
sage -t src/sage/modular/modform_hecketriangle/element.py  # 72 doctests failed
sage -t src/sage/schemes/generic/algebraic_scheme.py  # 2 doctests failed
sage -t src/sage/combinat/rigged_configurations/kleber_tree.py  # 1 doctest failed
sage -t src/sage/geometry/fan_morphism.py  # 2 doctests failed
sage -t src/sage/matrix/matrix_mod2e_dense.pyx  # 2 doctests failed
sage -t src/sage/combinat/binary_tree.py  # 15 doctests failed
sage -t src/sage/geometry/toric_lattice.py  # 2 doctests failed
sage -t src/sage/modular/quatalg/brandt.py  # 2 doctests failed
sage -t src/sage/coding/code_constructions.py  # 57 doctests failed
sage -t src/sage/coding/codecan/autgroup_can_label.pyx  # 45 doctests failed
sage -t src/sage/categories/primer.py  # 1 doctest failed
sage -t src/sage/combinat/sf/sf.py  # 1 doctest failed
sage -t src/sage/modular/hecke/ambient_module.py  # 1 doctest failed
sage -t src/sage/combinat/affine_permutation.py  # 3 doctests failed
sage -t src/sage/modular/hecke/module.py  # 7 doctests failed
sage -t src/sage/categories/map.pyx  # 4 doctests failed
sage -t src/sage/combinat/crystals/tensor_product.py  # 11 doctests failed
sage -t src/sage/doctest/control.py  # 1 doctest failed
sage -t src/sage/combinat/perfect_matching.py  # 5 doctests failed
sage -t src/sage/combinat/integer_vectors_mod_permgroup.py  # 6 doctests failed
sage -t src/sage/combinat/root_system/root_space.py  # 1 doctest failed
sage -t src/sage/combinat/sf/schur.py  # 2 doctests failed
sage -t src/sage/algebras/commutative_dga.py  # 389 doctests failed
sage -t src/sage/combinat/sf/hall_littlewood.py  # 2 doctests failed
sage -t src/sage/combinat/crystals/alcove_path.py  # 3 doctests failed
sage -t src/sage/sets/set_from_iterator.py  # 1 doctest failed
sage -t src/sage/geometry/hyperbolic_space/hyperbolic_point.py  # 1 doctest failed
sage -t src/doc/en/thematic_tutorials/coding_theory.rst  # 19 doctests failed
sage -t src/sage/combinat/root_system/root_system.py  # 6 doctests failed
sage -t src/sage/modular/abvar/abvar_newform.py  # 1 doctest failed
sage -t src/sage/quivers/representation.py  # 7 doctests failed
sage -t src/sage/combinat/rigged_configurations/tensor_product_kr_tableaux_element.py  # 1 doctest failed
sage -t src/sage/rings/algebraic_closure_finite_field.py  # 54 doctests failed
sage -t src/sage/combinat/crystals/generalized_young_walls.py  # 2 doctests failed
sage -t src/sage/combinat/diagram_algebras.py  # 5 doctests failed
sage -t src/sage/rings/polynomial/multi_polynomial_libsingular.pyx  # 2 doctests failed
sage -t src/sage/combinat/ncsf_qsym/generic_basis_code.py  # 1 doctest failed
sage -t src/sage/misc/c3_controlled.pyx  # 9 doctests failed
sage -t src/sage/modular/modsym/subspace.py  # 2 doctests failed
sage -t src/sage/modular/modform/cuspidal_submodule.py  # 1 doctest failed
sage -t src/sage/combinat/rigged_configurations/rc_infinity.py  # 3 doctests failed
sage -t src/sage/rings/finite_rings/integer_mod_ring.py  # 1 doctest failed
sage -t src/sage/algebras/schur_algebra.py  # 2 doctests failed
sage -t src/sage/categories/homset.py  # 2 doctests failed
sage -t src/sage/modular/abvar/finite_subgroup.py  # 2 doctests failed
sage -t src/sage/algebras/free_algebra.py  # 10 doctests failed
sage -t src/sage/combinat/ncsym/dual.py  # 2 doctests failed
sage -t src/sage/monoids/automatic_semigroup.py  # 17 doctests failed
sage -t src/sage/groups/abelian_gps/abelian_group.py  # 1 doctest failed
sage -t src/sage/rings/polynomial/polynomial_quotient_ring.py  # 6 doctests failed
sage -t src/sage/geometry/hyperbolic_space/hyperbolic_model.py  # 8 doctests failed
sage -t src/sage/combinat/composition_tableau.py  # 6 doctests failed
sage -t src/sage/tensor/modules/free_module_tensor.py  # 2 doctests failed
sage -t src/doc/en/thematic_tutorials/algebraic_combinatorics/tsetlin_library.rst  # 11 doctests failed
sage -t src/sage/coding/codecan/codecan.pyx  # 33 doctests failed
sage -t src/sage/combinat/dyck_word.py  # 15 doctests failed
sage -t src/sage/schemes/elliptic_curves/ell_field.py  # 9 doctests failed
sage -t src/sage/modular/modsym/boundary.py  # 5 doctests failed
sage -t src/sage/categories/highest_weight_crystals.py  # 1 doctest failed
sage -t src/sage/modular/abvar/homology.py  # 6 doctests failed
sage -t src/sage/combinat/crystals/monomial_crystals.py  # 3 doctests failed
sage -t src/sage/combinat/free_module.py  # 5 doctests failed
sage -t src/sage/combinat/sf/witt.py  # 2 doctests failed
sage -t src/sage/combinat/set_partition_ordered.py  # 3 doctests failed
sage -t src/sage/groups/generic.py  # 8 doctests failed
sage -t src/sage/modular/abvar/cuspidal_subgroup.py  # 2 doctests failed
sage -t src/sage/schemes/projective/endPN_automorphism_group.py  # 12 doctests failed
sage -t src/sage/algebras/affine_nil_temperley_lieb.py  # 1 doctest failed
sage -t src/sage/combinat/sf/orthotriang.py  # 1 doctest failed
sage -t src/sage/modular/hecke/hecke_operator.py  # 1 doctest failed
sage -t src/sage/rings/finite_rings/finite_field_base.pyx  # 17 doctests failed
sage -t src/sage/combinat/ribbon_tableau.py  # 7 doctests failed
sage -t src/sage/combinat/derangements.py  # 4 doctests failed
sage -t src/sage/combinat/six_vertex_model.py  # 2 doctests failed
sage -t src/sage/geometry/hyperplane_arrangement/hyperplane.py  # 1 doctest failed
sage -t src/sage/categories/classical_crystals.py  # 3 doctests failed
sage -t src/sage/combinat/posets/poset_examples.py  # 1 doctest failed
sage -t src/sage/combinat/crystals/fast_crystals.py  # 6 doctests failed
sage -t src/sage/categories/examples/with_realizations.py  # 4 doctests failed
sage -t src/sage/modular/modform_hecketriangle/functors.py  # 121 doctests failed
sage -t src/sage/matrix/matrix0.pyx  # 1 doctest failed
sage -t src/sage/sets/disjoint_union_enumerated_sets.py  # 6 doctests failed
sage -t src/sage/categories/sets_cat.py  # 1 doctest failed
sage -t src/sage/combinat/gelfand_tsetlin_patterns.py  # 6 doctests failed
sage -t src/sage/combinat/composition.py  # 6 doctests failed
sage -t src/sage/modules/fg_pid/fgp_morphism.py  # 3 doctests failed
sage -t src/sage/combinat/ribbon_shaped_tableau.py  # 5 doctests failed
sage -t src/sage/rings/finite_rings/conway_polynomials.py  # 17 doctests failed
sage -t src/sage/combinat/ordered_tree.py  # 3 doctests failed
sage -t src/sage/categories/crystals.py  # 1 doctest failed
sage -t src/sage/groups/perm_gps/symgp_conjugacy_class.py  # 4 doctests failed
sage -t src/sage/schemes/plane_conics/con_field.py  # 1 doctest failed
sage -t src/sage/rings/polynomial/polynomial_ring.py  # 1 doctest failed
sage -t src/sage/homology/chain_complex.py  # 2 doctests failed
sage -t src/sage/combinat/root_system/type_F.py  # 1 doctest failed
sage -t src/sage/rings/universal_cyclotomic_field/universal_cyclotomic_field.py  # 2 doctests failed
sage -t src/sage/rings/morphism.pyx  # 19 doctests failed
sage -t src/sage/categories/modules_with_basis.py  # 2 doctests failed
sage -t src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py  # 1 doctest failed
sage -t src/sage/rings/polynomial/multi_polynomial.pyx  # 7 doctests failed
sage -t src/sage/algebras/clifford_algebra.py  # 3 doctests failed
sage -t src/sage/tensor/modules/tensor_with_indices.py  # 1 doctest failed
sage -t src/sage/tests/french_book/linalg_doctest.py  # 1 doctest failed
sage -t src/sage/combinat/sf/classical.py  # 5 doctests failed
sage -t src/sage/combinat/abstract_tree.py  # 2 doctests failed
sage -t src/sage/combinat/symmetric_group_representations.py  # 6 doctests failed
sage -t src/sage/combinat/root_system/type_G.py  # 1 doctest failed
sage -t src/sage/combinat/sf/dual.py  # 1 doctest failed
sage -t src/sage/schemes/plane_conics/con_finite_field.py  # 1 doctest failed
sage -t src/sage/combinat/similarity_class_type.py  # 4 doctests failed
sage -t src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra.py  # 4 doctests failed
sage -t src/sage/categories/examples/finite_weyl_groups.py  # 1 doctest failed
sage -t src/sage/quivers/path_semigroup.py  # 2 doctests failed
sage -t src/sage/sets/set.py  # 1 doctest failed
sage -t src/sage/schemes/projective/projective_space.py  # 1 doctest failed
sage -t src/sage/groups/additive_abelian/additive_abelian_group.py  # 1 doctest failed
sage -t src/doc/en/thematic_tutorials/explicit_methods_in_number_theory/l_series.rst  # 3 doctests failed
sage -t src/sage/rings/quotient_ring.py  # 1 doctest failed
sage -t src/sage/modular/modform_hecketriangle/constructor.py  # 35 doctests failed
sage -t src/sage/categories/magmas.py  # 1 doctest failed
sage -t src/sage/geometry/linear_expression.py  # 3 doctests failed
sage -t src/sage/schemes/affine/affine_space.py  # 1 doctest failed
sage -t src/sage/combinat/crystals/elementary_crystals.py  # 4 doctests failed
sage -t src/sage/combinat/root_system/type_A.py  # 1 doctest failed
sage -t src/sage/rings/finite_rings/hom_finite_field.pyx  # 37 doctests failed
sage -t src/sage/combinat/sf/monomial.py  # 2 doctests failed
sage -t src/sage/algebras/shuffle_algebra.py  # 2 doctests failed
sage -t src/sage/geometry/polyhedron/backend_field.py  # 2 doctests failed
sage -t src/sage/rings/finite_rings/element_pari_ffelt.pyx  # 11 doctests failed
sage -t src/sage/misc/sage_unittest.py  # 1 doctest failed
sage -t src/sage/schemes/projective/projective_homset.py  # 1 doctest failed
sage -t src/sage/combinat/root_system/type_C.py  # 1 doctest failed
sage -t src/sage/combinat/rigged_configurations/bij_type_B.py  # 2 doctests failed
sage -t src/sage/combinat/core.py  # 3 doctests failed
sage -t src/sage/categories/finite_posets.py  # 46 doctests failed
sage -t src/sage/rings/polynomial/polynomial_quotient_ring_element.py  # 1 doctest failed
sage -t src/sage/combinat/sf/powersum.py  # 2 doctests failed
sage -t src/sage/modular/ssmod/ssmod.py  # 12 doctests failed
sage -t src/sage/rings/finite_rings/element_ext_pari.py  # 6 doctests failed
sage -t src/sage/categories/examples/semigroups.py  # 6 doctests failed
sage -t src/sage/categories/examples/finite_semigroups.py  # 2 doctests failed
sage -t src/sage/combinat/posets/incidence_algebras.py  # 10 doctests failed
sage -t src/sage/rings/multi_power_series_ring.py  # 7 doctests failed
sage -t src/sage/schemes/generic/homset.py  # 4 doctests failed
sage -t src/doc/en/thematic_tutorials/coercion_and_categories.rst  # 4 doctests failed
sage -t src/sage/rings/number_field/class_group.py  # 1 doctest failed
sage -t src/sage/combinat/designs/orthogonal_arrays_find_recursive.pyx  # 2 doctests failed
sage -t src/sage/categories/functor.pyx  # 5 doctests failed
sage -t src/sage/combinat/rigged_configurations/bij_type_D_twisted.py  # 2 doctests failed
sage -t src/sage/rings/finite_rings/constructor.py  # 5 doctests failed
sage -t src/sage/categories/hopf_algebras_with_basis.py  # 2 doctests failed
sage -t src/sage/combinat/integer_list.py  # 1 doctest failed
sage -t src/sage/rings/power_series_ring.py  # 3 doctests failed
sage -t src/sage/modular/modform_hecketriangle/graded_ring.py  # 68 doctests failed
sage -t src/sage/rings/finite_rings/finite_field_givaro.py  # 3 doctests failed
sage -t src/sage/rings/finite_rings/finite_field_pari_ffelt.py  # 17 doctests failed
sage -t src/sage/misc/dev_tools.py  # 1 doctest failed
sage -t src/sage/modular/hecke/element.py  # 2 doctests failed
sage -t src/sage/sets/finite_set_maps.py  # 16 doctests failed
sage -t src/sage/quivers/homspace.py  # 1 doctest failed
sage -t src/sage/modular/modsym/manin_symbol_list.py  # 1 doctest failed
sage -t src/sage/combinat/rigged_configurations/bij_abstract_class.py  # 2 doctests failed
sage -t src/sage/rings/finite_rings/finite_field_ntl_gf2e.py  # 1 doctest failed
sage -t src/sage/rings/finite_rings/element_ntl_gf2e.pyx  # 3 doctests failed
sage -t src/sage/combinat/rigged_configurations/bij_type_D.py  # 2 doctests failed
sage -t src/doc/en/thematic_tutorials/explicit_methods_in_number_theory/method_of_graphs.rst  # 2 doctests failed
sage -t src/sage/modular/modform_hecketriangle/series_constructor.py  # 85 doctests failed
sage -t src/sage/rings/finite_rings/finite_field_ext_pari.py  # 2 doctests failed
sage -t src/sage/combinat/sf/homogeneous.py  # 2 doctests failed
sage -t src/sage/rings/quotient_ring_element.py  # 2 doctests failed
sage -t src/sage/geometry/polyhedron/parent.py  # 1 doctest failed
sage -t src/sage/sets/cartesian_product.py  # 1 doctest failed
sage -t src/sage/modules/fg_pid/fgp_element.py  # 1 doctest failed
sage -t src/sage/combinat/interval_posets.py  # 418 doctests failed
sage -t src/sage/modules/module.pyx  # 1 doctest failed
sage -t src/sage/categories/commutative_rings.py  # 2 doctests failed
sage -t src/sage/combinat/integer_matrices.py  # 1 doctest failed
sage -t src/sage/categories/examples/hopf_algebras_with_basis.py  # 1 doctest failed
sage -t src/sage/rings/polynomial/polynomial_zz_pex.pyx  # 21 doctests failed
sage -t src/sage/tensor/modules/finite_rank_free_module.py  # 4 doctests failed
sage -t src/sage/combinat/sf/elementary.py  # 2 doctests failed
sage -t src/sage/categories/regular_crystals.py  # 1 doctest failed
sage -t src/sage/combinat/rigged_configurations/rc_crystal.py  # 2 doctests failed
sage -t src/sage/modular/modform_hecketriangle/analytic_type.py  # 113 doctests failed
sage -t src/sage/rings/finite_rings/homset.py  # 24 doctests failed
sage -t src/sage/algebras/letterplace/free_algebra_element_letterplace.pyx  # 3 doctests failed
sage -t src/sage/rings/finite_rings/finite_field_prime_modn.py  # 1 doctest failed
sage -t src/sage/modular/modsym/element.py  # 1 doctest failed
sage -t src/sage/geometry/polyhedron/backend_cdd.py  # 2 doctests failed
sage -t src/sage/groups/semimonomial_transformations/semimonomial_transformation_group.py  # 29 doctests failed
sage -t src/sage/algebras/jordan_algebra.py  # 4 doctests failed
sage -t src/sage/combinat/combinatorial_algebra.py  # 2 doctests failed
sage -t src/sage/modules/with_basis/morphism.py  # 8 doctests failed
sage -t src/sage/libs/ntl/ntl_ZZ_pEX_linkage.pxi  # 20 doctests failed
sage -t src/sage/algebras/letterplace/free_algebra_letterplace.pyx  # 1 doctest failed
sage -t src/sage/schemes/generic/scheme.py  # 3 doctests failed
sage -t src/sage/rings/complex_mpc.pyx  # 6 doctests failed
sage -t src/sage/categories/modules.py  # 1 doctest failed
sage -t src/sage/combinat/crystals/highest_weight_crystals.py  # 2 doctests failed
sage -t src/sage/rings/finite_rings/element_base.pyx  # 6 doctests failed
sage -t src/sage/geometry/newton_polygon.py  # 2 doctests failed
sage -t src/sage/sets/family.py  # 1 doctest failed
sage -t src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_element.py  # 1 doctest failed
sage -t src/sage/algebras/weyl_algebra.py  # 2 doctests failed
sage -t src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_morphism.py  # 1 doctest failed
sage -t src/sage/quivers/algebra.py  # 1 doctest failed
sage -t src/sage/combinat/sf/multiplicative.py  # 1 doctest failed
sage -t src/sage/tensor/modules/free_module_automorphism.py  # 3 doctests failed
sage -t src/sage/rings/polynomial/polynomial_zmod_flint.pyx  # 4 doctests failed
sage -t src/sage/combinat/crystals/affine.py  # 2 doctests failed
sage -t src/sage/categories/algebras_with_basis.py  # 1 doctest failed
sage -t src/sage/combinat/rooted_tree.py  # 4 doctests failed
sage -t src/sage/monoids/hecke_monoid.py  # 7 doctests failed
sage -t src/sage/groups/affine_gps/affine_group.py  # 1 doctest failed
sage -t src/sage/modular/hecke/degenmap.py  # 1 doctest failed
sage -t src/sage/modular/modsym/modular_symbols.py  # 5 doctests failed
sage -t src/sage/modules/with_basis/subquotient.py  # 2 doctests failed
sage -t src/sage/modular/abvar/lseries.py  # 2 doctests failed
sage -t src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_ideal.py  # 1 doctest failed
sage -t src/sage/algebras/free_algebra_quotient.py  # 3 doctests failed
sage -t src/sage/structure/parent_gens.pyx  # 4 doctests failed
sage -t src/sage/groups/affine_gps/euclidean_group.py  # 1 doctest failed
sage -t src/sage/combinat/integer_list_old.py  # 1 doctest failed
sage -t src/sage/groups/abelian_gps/values.py  # 2 doctests failed
sage -t src/sage/tensor/modules/free_module_alt_form.py  # 1 doctest failed
sage -t src/sage/groups/affine_gps/group_element.py  # 1 doctest failed
sage -t src/sage/algebras/free_algebra_quotient_element.py  # 1 doctest failed
sage -t src/sage/tensor/modules/free_module_linear_group.py  # 1 doctest failed
sage -t src/sage/geometry/polyhedron/base_RDF.py  # 1 doctest failed
sage -t src/sage/tensor/modules/tensor_free_module.py  # 1 doctest failed
sage -t src/sage/rings/finite_rings/hom_finite_field_givaro.pyx  # 14 doctests failed
sage -t src/sage/tensor/modules/free_module_homset.py  # 1 doctest failed
sage -t src/sage/rings/homset.py  # 2 doctests failed
sage -t src/sage/combinat/lyndon_word.py  # 1 doctest failed
sage -t src/sage/geometry/hyperbolic_space/hyperbolic_interface.py  # 1 doctest failed
sage -t src/sage/groups/semimonomial_transformations/semimonomial_transformation.pyx  # 35 doctests failed
sage -t src/sage/monoids/indexed_free_monoid.py  # 8 doctests failed
sage -t src/sage/rings/polynomial/polynomial_gf2x.pyx  # 2 doctests failed
sage -t src/sage/combinat/posets/elements.py  # 1 doctest failed
sage -t src/sage/categories/examples/finite_dimensional_algebras_with_basis.py  # 1 doctest failed
sage -t src/sage/combinat/rigged_configurations/bij_type_C.py  # 2 doctests failed
sage -t src/sage/combinat/rigged_configurations/bij_type_A2_odd.py  # 2 doctests failed
sage -t src/sage/schemes/generic/spec.py  # 1 doctest failed
sage -t src/sage/geometry/polyhedron/backend_ppl.py  # 1 doctest failed
sage -t src/sage/homology/koszul_complex.py  # 1 doctest failed
sage -t src/sage/algebras/free_algebra_element.py  # 2 doctests failed
sage -t src/sage/combinat/posets/linear_extensions.py  # 101 doctests failed
sage -t src/sage/combinat/rigged_configurations/bij_type_A2_even.py  # 2 doctests failed
sage -t src/sage/rings/noncommutative_ideals.pyx  # 4 doctests failed
sage -t src/sage/combinat/rigged_configurations/bij_type_A2_dual.py  # 2 doctests failed
sage -t src/sage/combinat/rigged_configurations/bij_type_A.py  # 2 doctests failed
sage -t src/sage/categories/examples/sets_cat.py  # 1 doctest failed
sage -t src/sage/rings/polynomial/polynomial_ring_homomorphism.pyx  # 3 doctests failed
sage -t src/sage/geometry/polyhedron/base_QQ.py  # 1 doctest failed
sage -t src/sage/combinat/necklace.py  # 1 doctest failed
sage -t src/sage/rings/finite_rings/hom_prime_finite_field.pyx  # 7 doctests failed
sage -t src/sage/groups/indexed_free_group.py  # 4 doctests failed
sage -t src/sage/rings/ideal_monoid.py  # 1 doctest failed
sage -t src/sage/categories/examples/finite_coxeter_groups.py  # 1 doctest failed
sage -t src/sage/categories/examples/finite_monoids.py  # 2 doctests failed
sage -t src/sage/sets/finite_set_map_cy.pyx  # 29 doctests failed
sage -t src/sage/tensor/modules/ext_pow_free_module.py  # 1 doctest failed
sage -t src/sage/categories/finite_crystals.py  # 1 doctest failed
sage -t src/sage/sets/totally_ordered_finite_set.py  # 3 doctests failed
sage -t src/sage/categories/finite_weyl_groups.py  # 1 doctest failed
sage -t src/sage/modular/modsym/manin_symbol.pyx  # 1 doctest failed
sage -t src/sage/categories/examples/algebras_with_basis.py  # 1 doctest failed
sage -t src/sage/categories/examples/crystals.py  # 1 doctest failed
sage -t src/sage/misc/nested_class_test.py  # 2 doctests failed
sage -t src/sage/monoids/free_monoid.py  # 1 doctest failed
sage -t src/sage/combinat/vector_partition.py  # 2 doctests failed
sage -t src/sage/categories/examples/posets.py  # 2 doctests failed
sage -t src/sage/categories/examples/graded_modules_with_basis.py  # 1 doctest failed
sage -t src/sage/categories/examples/semigroups_cython.pyx  # 4 doctests failed
sage -t src/sage/structure/list_clone_timings.py  # 1 doctest failed
sage -t src/sage/categories/examples/commutative_additive_semigroups.py  # 2 doctests failed
sage -t src/sage/rings/pari_ring.py  # 1 doctest failed
sage -t src/sage/categories/examples/commutative_additive_monoids.py  # 2 doctests failed
sage -t src/sage/categories/examples/monoids.py  # 2 doctests failed
sage -t src/sage/monoids/monoid.py  # 1 doctest failed
----------------------------------------------------------------------

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 9, 2015

Changed commit from 6c712ef to 1ba4030

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 9, 2015

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

1ba4030Metaclass for inheriting comparison functions

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 9, 2015

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

96886e9Metaclass for inheriting comparison functions

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 9, 2015

Changed commit from 1ba4030 to 96886e9

@jdemeyer
Copy link
Author

jdemeyer commented May 9, 2015

Changed dependencies from #18321, #18322, #18330, #18380, #18387 to #18321, #18322, #18330, #18380, #18387, #18388

@jdemeyer
Copy link
Author

jdemeyer commented May 9, 2015

Changed dependencies from #18321, #18322, #18330, #18380, #18387, #18388 to #18321, #18322, #18330, #18380, #18387, #18388, #18389

@jpflori
Copy link

jpflori commented Jul 1, 2015

comment:35

Ok, that is good news, I was kind of afraid that this patch was not so useful :)

Do you plan on opening a follow-up ticket to remove all the now superfluous boilerplate code?

I guess my only concern left is about the comments in elements.pyx.

@jdemeyer
Copy link
Author

jdemeyer commented Jul 1, 2015

comment:36

Replying to @jpflori:

Another question, is there any doc about this in the dev manual

As far as I know, there is not. There is some documentation in src/doc/en/thematic_tutorials/coercion_and_categories.rst, but that's really about Python only.

I do plan to write documentation in #18306, but I haven't gotten around to actually do it.

or is there only the comments in element.pyx?
I guess the latter comments should at least be modified.

I'll have a look.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2015

Branch pushed to git repo; I updated commit sha1. New commits:

0e0301aFix documentation

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2015

Changed commit from ac96e64 to 0e0301a

@jpflori
Copy link

jpflori commented Jul 1, 2015

Reviewer: Jean-Pierre Flori

@jpflori
Copy link

jpflori commented Jul 1, 2015

comment:38

Thanks!

@jdemeyer
Copy link
Author

jdemeyer commented Jul 1, 2015

comment:39

Replying to @jpflori:

Do you plan on opening a follow-up ticket to remove all the now superfluous boilerplate code?

Since this would be ticket with a lot of potential conflicts, it's best if the author and potential reviewer agree in advance that such a thing be a good idea and to try to get that ticket merged quickly after a new beta comes out.

Can you do that?

@vbraun
Copy link
Member

vbraun commented Jul 2, 2015

comment:40
sage -t --long src/sage/structure/dynamic_class.py
**********************************************************************
File "src/sage/structure/dynamic_class.py", line 358, in sage.structure.dynamic_class.dynamic_class_internal
Failed example:
    inspect.getfile(Foo2)
Expected:
    '.../sage/structure/dynamic_class.pyc'
Got:
    '/Users/buildslave-sage/slave/sage_git/build/local/lib/python2.7/site-packages/sage/structure/dynamic_class.py'
**********************************************************************
File "src/sage/structure/dynamic_class.py", line 360, in sage.structure.dynamic_class.dynamic_class_internal
Failed example:
    inspect.getfile(Foo3)
Expected:
    '.../sage/structure/dynamic_class.pyc'
Got:
    '/Users/buildslave-sage/slave/sage_git/build/local/lib/python2.7/site-packages/sage/structure/dynamic_class.py'
**********************************************************************
1 item had failures:
   2 of  20 in sage.structure.dynamic_class.dynamic_class_internal
    [69 tests, 2 failures, 0.49 s]

@jdemeyer
Copy link
Author

jdemeyer commented Jul 2, 2015

comment:41

Any clue why the extension changed from .pyc to .py? Can we just change the doctest? This doesn't really look related to this ticket.

@vbraun
Copy link
Member

vbraun commented Jul 2, 2015

comment:42

I think its because import dynamic_class was removed somewhere, changing the internal caching. IMHO the doctest should be using sage.misc.sageinspect.sage_getfile()

@jdemeyer
Copy link
Author

jdemeyer commented Jul 2, 2015

comment:43

I cannot reproduce this problem... suggestions?

@jdemeyer
Copy link
Author

jdemeyer commented Jul 2, 2015

comment:44

Are you really sure that this ticket is causing that problem?

@jdemeyer
Copy link
Author

jdemeyer commented Jul 2, 2015

comment:45

Cannot reproduce on home.vbraun.cc either...

@vbraun
Copy link
Member

vbraun commented Jul 2, 2015

comment:46

Can we still replace it with sage.misc.sageinspect.sage_getfile which afaik normalized pyc -> py filenames? I don't have time to try to reproduces this and its just waiting for trouble anyways. Might be due to timing issues if it depends on import order, too.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 3, 2015

Branch pushed to git repo; I updated commit sha1. New commits:

f6058e7Use sage_getfile instead of inspect.getfile

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 3, 2015

Changed commit from 0e0301a to f6058e7

@jdemeyer
Copy link
Author

jdemeyer commented Jul 3, 2015

New commits:

f6058e7Use sage_getfile instead of inspect.getfile

@vbraun
Copy link
Member

vbraun commented Jul 3, 2015

Changed branch from u/jdemeyer/ticket/18329 to f6058e7

@jdemeyer
Copy link
Author

Changed commit from f6058e7 to none

@jdemeyer
Copy link
Author

comment:50

Replying to @jpflori:

Do you plan on opening a follow-up ticket to remove all the now superfluous boilerplate code?

One such ticket (with not so many changes) is #18881.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants