-
Notifications
You must be signed in to change notification settings - Fork 287
Description
Option compile_builtins of methods from_args and from_argv is to be removed in an upcoming release of VUnit. Until v4.7.0 (included), compile_builtins is enabled by default. Therefore, removing the option (thus, having it disabled by default), is a breaking change that will affect most users, particularly newcomers copying and pasting examples/tutorials. This issue contains guidelines to adapt the scripts.
References:
- Do not add builtins by default #559
- add 'compile_builtins' deprecation warning #757
- remove compile_builtins and vunit.verilog #764
- vunit.github.io: Python Interface » vunit.ui » add_verilog_builtins
- vunit.github.io: Python Interface » vunit.ui » add_vhdl_builtins
- vunit.github.io: Python Interface » vunit.ui » from_args
- vunit.github.io: Python Interface » vunit.ui » from_argv
VHDL only
Traditional procedure (until v4.6.0):
from vunit import VUnit
VU = VUnit.from_argv()Recommended procedure with v4.7.0 (current master):
from vunit import VUnit
VU = VUnit.from_argv(compile_builtins=False) # Stop using the builtins ahead of time.
VU.add_vhdl_builtins() # Add the VHDL builtins explicitly!Upcoming procedure with v5:
from vunit import VUnit
VU = VUnit.from_argv() # Do not use compile_builtins.
VU.add_vhdl_builtins() # Add the VHDL builtins explicitly!Verilog only
Traditional procedure (until v4.6.0):
from vunit.verilog import VUnit
VU = VUnit.from_argv()Recommended procedure with v4.7.0 (current master):
from vunit import VUnit # Change this to use the default class instead of vunit.verilog!
VU = VUnit.from_argv(compile_builtins=False) # Ensure that VHDL builtins are not added.
VU.add_verilog_builtins() # Add the verilog builtins explicitly!Upcoming procedure with v5:
from vunit import VUnit # Use the default class instead of vunit.verilog!
VU = VUnit.from_argv() # Do not use compile_builtins.
VU.add_verilog_builtins() # Add the verilog builtins explicitly!Mixed language (VHDL and Verilog, or Verilog and VHDL)
Traditional procedure (until v4.6.0):
# Default class (VHDL first)
from vunit import VUnit
VU = VUnit.from_argv()
VU.add_verilog_builtins()# Verilog class (Verilog first)
from vunit.verilog import VUnit
VU = VUnit.from_argv()
VU.add_vhdl_builtins()Recommended procedure with v4.7.0 (current master):
# VHDL first
from vunit import VUnit
VU = VUnit.from_argv(compile_builtins=False) # Stop using the builtins ahead of time.
VU.add_vhdl_builtins() # Add the VHDL builtins explicitly!
VU.add_verilog_builtins()# Verilog first
from vunit import VUnit
VU = VUnit.from_argv(compile_builtins=False) # Ensure that VHDL builtins are not added ahead of time.
VU.add_verilog_builtins() # Add the verilog builtins explicitly!
VU.add_vhdl_builtins()Upcoming procedure with v5:
# VHDL first
from vunit import VUnit
VU = VUnit.from_argv() # Do not use compile_builtins.
VU.add_vhdl_builtins() # Add the VHDL builtins explicitly!
VU.add_verilog_builtins()# Verilog first
from vunit import VUnit # Use the default class instead of vunit.verilog!
VU = VUnit.from_argv() # Do not use compile_builtins
VU.add_verilog_builtins() # Add the verilog builtins explicitly!
VU.add_vhdl_builtins()