Opened 9 months ago

Last modified 5 weeks ago

#29217 new enhancement

Script to add new tor files and modules in rust and/or C

Reported by: nickm Owned by:
Priority: Medium Milestone: Tor: 0.4.3.x-final
Component: Core Tor/Tor Version:
Severity: Normal Keywords: network-team-roadmap-september
Cc: nickm Actual Points:
Parent ID: Points: 2
Reviewer: Sponsor: Sponsor31-can

Description

This should support modules that are subsystems and/or optional.

Child Tickets

TicketTypeStatusOwnerSummary
#31335defectnewmake check-includes does not check out of tree builds correctly
#31336defectclosedFix usage for add_c_file.py

Change History (8)

comment:1 Changed 6 months ago by nickm

Milestone: Tor: 0.4.2.x-final

Tentatively placing some roadmapped tasks for s31 into 0.4.2.

comment:2 Changed 5 months ago by nickm

Partial implementation here in my branch add_c_file, which I am currently using. :)

comment:3 Changed 3 months ago by gaba

Cc: nickm added
Keywords: network-team-roadmap-september added

comment:4 Changed 3 months ago by teor

Nick, it looks like add_c_file.py was added in commit 2f31c8146f in 0.4.1.2-alpha.

But it has a bug: the suggested usage fails with:

$ scripts/maint/add_c_file.py ./src/feature/dirauth/ocelot.c
Made files successfully but couldn't identify include.am for ./src/feature/dirauth/ocelot.c
Exit 1

The correct usage has no "./":

$ scripts/maint/add_c_file.py src/feature/dirauth/ocelot.c

We should fix the usage, or make topdir_file() use python's canonical path functions.

comment:5 Changed 3 months ago by nickm

Right; add_c_file.py is only a partial implementation of this feature. We also need a way to add new modules, a way to add headers only, a way to add rust modules, and more.

comment:6 Changed 2 months ago by teor

I opened #31335 and #31336 for bugs that we need to fix when we implement this ticket.

comment:7 Changed 6 weeks ago by nickm

Type: defectenhancement

Mark a number of current 0.4.2.x "defects" as "enhancements."

comment:8 Changed 5 weeks ago by nickm

Milestone: Tor: 0.4.2.x-finalTor: 0.4.3.x-final

Defer several enhancements from "new" to 0.4.3.

Note: See TracTickets for help on using tickets.