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

Merge export, log and proxy repositories #1675

Merged
merged 522 commits into from
Dec 13, 2023
Merged

Merge export, log and proxy repositories #1675

merged 522 commits into from
Dec 13, 2023

Conversation

legoktm
Copy link
Member

@legoktm legoktm commented Dec 11, 2023

Description

This begins implementing the SecureDrop Workstation component monorepo, as discussed in https://github.com/freedomofpress/securedrop-engineering/pull/32.

Test Plan

  • CI passes, except proxy bookworm jobs (because of pyyaml)
  • "Required" job names are updated by infra
  • Visual review & team thumbs-up

Post-merge tasks

emkll and others added 30 commits March 23, 2020 12:38
Ensures changes to a file opened in a dvm are not copied back to the calling vm
Update mimeapps for securedrop-export, securedrop-export 0.2.2
Update description in README to mirror current implementation
Now we are using the incoming timeout value from the JSON input.
Increase the default Requests connection and read timeout from ten to
120 seconds.
Use the wheel hosted on pip mirror
Uses incoming timeout value from JSON
To have latest black, we need updated typed-ast,
for that we have to upgrade mypy too, and for mypy
upgrade to work, we had to upgrade the mypy-extensions.

It first runs isort to check if it passes, and then
it runs black. Both uses 100 as line length.

setup.py marks Python version as >= 3.7 as we are testing
and running the code only on 3.7 on Debian Buster.

Also contains the formatting change in proxy.py for black
check to run sucessfully on CI.
It adds a configuration file to skip the previous commmit
which has isort and black formatting changes.

```
git config blame.ignoreRevsFile .git-blame-ignore-revs
````

After one executes the above command, `git blame` does not show
details for the formatting commit.
…_dev

Fixes #57 runs black & isor for code formatting check
Add the fixture for test_json_response_with_timeout
This prevents misidentification of Whonix VMs, which always use
'host' as the hostname.
- updated urllib3 from 1.25.8 to 1.25.10
- updated pip-tools to >=5.0.0 to clear pip-related error
- Updated Makefile to pin pip and setuptools in dev requirements
Updated dependencies to clear safety checks
eaon and others added 18 commits August 1, 2023 12:31
Bump certifi dev dependency due to removal of root certificate
We're still using redis==3.3.11, so we should be pulling in those type
stubs and not the ones for v4. Coincidentally, those stubs also happen
to not have dependencies on cryptography and types-pyOpenSSL, which is
very nice.

Refs <GHSA-jm77-qphf-c4w8>.
Use types-redis<4, drop cryptography and other dev dependencies
We're installing the Poetry system package on Debian Bookworm -- that's
generally a preferable strategy going forward, and in fact, pip
will error out if you attempt to install it from PyPI. This
necessitates some conditional logic we can drop once we move fully
to Bookworm.
Use Poetry for dependency management
Switch dependency management to use poetry, which is much nicer than
pip-tools. This is largely based off of
<freedomofpress/securedrop-proxy#122> and
applies the same changes to the Makefile and CI.
Switch dependency management to use poetry, which is much nicer than
pip-tools. This is largely based off of
<freedomofpress/securedrop-proxy#122> and
applies the same changes to the Makefile and CI.
Migrate dependency management to poetry
Migrate dependency management to poetry
@legoktm legoktm requested a review from a team as a code owner December 11, 2023 22:32
This is a very naive complete merge by prefixing anchors and job names
with component names. De-duplication and consolidation will happen in
future commits.
@legoktm
Copy link
Member Author

legoktm commented Dec 12, 2023

CI failures for proxy on bookworm are expected, the one that isn't is proxy_check-python-security-bullseye: it's because there are 2 urllib3 security issues - they don't affect us, so we just need to suppress them, either in this PR or as a follow-up.

Copy link
Contributor

@zenmonkeykstop zenmonkeykstop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For now, individual packages can be built via PKG_PATH=<clientsrcpath>/<whatever> make securedrop-<whatever>, so 👍 from me on the merge! Versioning unification and build logic can follow after.

The language is roughly taken from the client README.
@zenmonkeykstop zenmonkeykstop merged commit fde9306 into main Dec 13, 2023
33 of 38 checks passed
@zenmonkeykstop zenmonkeykstop deleted the monorepo branch December 13, 2023 20:42
@cfm cfm mentioned this pull request Apr 4, 2024
10 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.