File tree Expand file tree Collapse file tree 4 files changed +28
-15
lines changed Expand file tree Collapse file tree 4 files changed +28
-15
lines changed Original file line number Diff line number Diff line change @@ -62,11 +62,11 @@ jobs:
6262 strategy :
6363 fail-fast : false
6464 matrix :
65- project :
66- - amaranth-lang/amaranth-boards
67- - amaranth-lang/amaranth-stdio
68- - amaranth-lang/amaranth-soc
69- name : ' smoke (${{ matrix.project }})'
65+ project : # test the last commit before dropping py3.8
66+ - { name: amaranth-lang/amaranth-boards, ref: 19b97324ecf9111c5d16377af79f82aad761c476 }
67+ - { name: amaranth-lang/amaranth-stdio, ref: 2da45b8e75421879d1096495a4fb438de705f567 }
68+ - { name: amaranth-lang/amaranth-soc, ref: 746709e1e992bccf6e2362450243cafd00d72a14 }
69+ name : ' smoke (${{ matrix.project.name }})'
7070 steps :
7171 - name : Check out Amaranth source code
7272 uses : actions/checkout@v4
7676 - name : Check out source code
7777 uses : actions/checkout@v4
7878 with :
79- repository : ${{ matrix.project }}
79+ repository : ${{ matrix.project.name }}
80+ ref : ${{ matrix.project.ref }}
8081 path : project
8182 fetch-depth : 0
8283 - name : Set up PDM
Original file line number Diff line number Diff line change 33import argparse
44import importlib
55
6+ from amaranth .lib .wiring import Signature
7+
68from .hdl import Signal , Record , Elaboratable
79from .back import rtlil
810
@@ -68,12 +70,14 @@ def _serve_yosys(modules):
6870
6971 try :
7072 elaboratable = modules [module_name ](* args , ** kwargs )
71- ports = []
72- # By convention, any public attribute that is a Signal or a Record is
73- # considered a port.
74- for port_name , port in vars (elaboratable ).items ():
75- if not port_name .startswith ("_" ) and isinstance (port , (Signal , Record )):
76- ports += port ._lhs_signals ()
73+ ports = None
74+ if not (hasattr (elaboratable , "signature" ) and isinstance (elaboratable .signature , Signature )):
75+ ports = []
76+ # By convention, any public attribute that is a Signal or a Record is
77+ # considered a port.
78+ for port_name , port in vars (elaboratable ).items ():
79+ if not port_name .startswith ("_" ) and isinstance (port , (Signal , Record )):
80+ ports += port ._lhs_signals ()
7781 rtlil_text = rtlil .convert (elaboratable , name = module_name , ports = ports )
7882 response = {"frontend" : "ilang" , "source" : rtlil_text }
7983 except Exception as error :
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ Documentation for past releases
99
1010Documentation for past releases of the Amaranth language and toolchain is available online:
1111
12+ * `Amaranth 0.5.3 <https://amaranth-lang.org/docs/amaranth/v0.5.3/ >`_
1213* `Amaranth 0.5.2 <https://amaranth-lang.org/docs/amaranth/v0.5.2/ >`_
1314* `Amaranth 0.5.1 <https://amaranth-lang.org/docs/amaranth/v0.5.1/ >`_
1415* `Amaranth 0.5.0 <https://amaranth-lang.org/docs/amaranth/v0.5.0/ >`_
@@ -21,8 +22,8 @@ Documentation for past releases of the Amaranth language and toolchain is availa
2122* `Amaranth 0.3 <https://amaranth-lang.org/docs/amaranth/v0.3/ >`_
2223
2324
24- Version 0.5.3 (unreleased)
25- ==========================
25+ Version 0.5.3
26+ =============
2627
2728
2829Language changes
@@ -31,6 +32,12 @@ Language changes
3132* Added: individual bits of the same signal can now be assigned from different modules or domains.
3233
3334
35+ Toolchain changes
36+ -----------------
37+
38+ * Added: the Amaranth RPC server can now elaborate :class: `amaranth.lib.wiring.Component ` objects on demand.
39+
40+
3441Version 0.5.2
3542=============
3643
Original file line number Diff line number Diff line change @@ -81,7 +81,8 @@ docs = [
8181 " sphinx-autobuild" ,
8282]
8383examples = [
84- " amaranth-boards @ git+https://github.com/amaranth-lang/amaranth-boards.git"
84+ # pin to last commit with py3.8 support
85+ " amaranth-boards @ git+https://github.com/amaranth-lang/amaranth-boards.git@19b97324ecf9111c5d16377af79f82aad761c476"
8586]
8687
8788[tool .pdm .scripts ]
You can’t perform that action at this time.
0 commit comments