willianpaixao

willianpaixao

Senior Java Developer, Experienced Linux System Administrator, Newbie Data Engineer, Jiu-jitsu addicted :martial_arts_uniform:

Member Since 11 years ago

Stockholm, Sweden

Experience Points
64
follower
Lessons Completed
80
follow
Lessons Completed
817
stars
Best Reply Awards
55
repos

130 contributions in the last year

Pinned
⚡ Ansible playbooks for RPi setup
⚡ A great source of information to learn and practice German as a foreign language. :de:
⚡ Terraform module for Gitlab projects
⚡ node of the decentralized oracle network, bridging on and off-chain computation
⚡ 🕵 Artificial Intelligence for social control of public administration
⚡ Zipline, a Pythonic Algorithmic Trading Library
Activity
Jan
18
1 day ago
started
started time in 19 hours ago
started
started time in 19 hours ago
Jan
15
4 days ago
Activity icon
delete
deleted time in 3 days ago
push

willianpaixao push willianpaixao/Sensor-Watch

willianpaixao
willianpaixao
willianpaixao
willianpaixao
willianpaixao
willianpaixao

fix missing prototype warnings

willianpaixao
willianpaixao

Merge branch 'main' of github.com:joeycastillo/Sensor-Watch into pr/24

willianpaixao
willianpaixao
willianpaixao
willianpaixao

update makefile and pipeline workflow

willianpaixao
willianpaixao

Merge remote-tracking branch 'origin/add-github-actions' into add-github-actions

willianpaixao
willianpaixao
willianpaixao
willianpaixao
willianpaixao
willianpaixao

Merge pull request #24 from willianpaixao/add-github-actions

introduce github actions

willianpaixao
willianpaixao

trigger pages workflow only on push to main

willianpaixao
willianpaixao

Movement: allow scheduling precisely timed background tasks (resolves #28)

willianpaixao
willianpaixao

Movement: give watch faces their index at setup time

willianpaixao
willianpaixao

add documentation for watch face index

willianpaixao
willianpaixao

add utility function to check if TCC is enabled

willianpaixao
willianpaixao

movement: add hourly signal to simple clock face

willianpaixao
willianpaixao

Merge branch 'main' of github.com:joeycastillo/Sensor-Watch into main

willianpaixao
willianpaixao

add 'hello there' face, demo for documentation

commit sha: 0c68b9fba520d0e28cf570eeeaee4e3207b9e21f

push time in 3 days ago
pull request

willianpaixao pull request ethereum/solidity

willianpaixao
willianpaixao

feat: add sphinx-intl to facilitate internacionalization

Hello,

this PR introduces the sphinx-intl library and its usage in the scripts/docs.sh script. The idea is to facilitate translation of the documentation from the source, the Sphinx framework.

Note, to archive the "full translation experience", end-to-end, there are more steps to be made, such as translating the generated files and committing back to a branch (not necessarily develop). But the library usage already can be used by RTD, just will contain the same content as the original English. 😅

Reference

push

willianpaixao push willianpaixao/solidity

willianpaixao
willianpaixao

feat: add sphinx-intl to facilitate internacionalization

commit sha: 69543974f5221ff88b1ed6c39e775821f75e7810

push time in 3 days ago
push

willianpaixao push willianpaixao/solidity

willianpaixao
willianpaixao

External test for Yield Liquidator V2

willianpaixao
willianpaixao

CI: Use 'large' resource class for macOS and use -j without spaces

willianpaixao
willianpaixao

Merge pull request #12530 from ethereum/yield-liquidator-ext-test

External test for Yield Protocol Liquidator v2

willianpaixao
willianpaixao

Merge pull request #12536 from ethereum/optimize-mac-os-ci-jobs

[CI] Use large resource class for macOS and use -j without spaces

commit sha: 756ae673e1ebc9471d2eca3c0024ec0ab34fdb43

push time in 3 days ago
Activity icon
created branch

willianpaixao in willianpaixao/solidity create branch add-sphinx-intl

createdAt 3 days ago
Activity icon
delete

willianpaixao in willianpaixao/solidity delete branch wilianpaixao

deleted time in 3 days ago
Activity icon
issue

willianpaixao issue comment ethereum/solidity

willianpaixao
willianpaixao

[CI] Use `large` resource class for macOS and use `-j` without spaces

Fixes #12422.

This is an experiment to see if it's the space in -j 5 that prevents the option from taking effect on macOS.

EDIT: Looks like it works!

willianpaixao
willianpaixao

Oh, right, that's awesome then. As for the inconsistent parameter syntax, how about removing the space from all the other jobs? As The Mandalorian would say, "this is the way".

Jan
14
5 days ago
Activity icon
issue

willianpaixao issue comment ethereum/solidity

willianpaixao
willianpaixao

[CI] Use `large` resource class for macOS and use `-j` without spaces

Fixes #12422.

This is an experiment to see if it's the space in -j 5 that prevents the option from taking effect on macOS.

If it works, we'll have faster macOS builds.

willianpaixao
willianpaixao

Well, it did take half of the time (from 22m to 11m), but you also increased the machine, so we can't know for sure it was the space.

Activity icon
issue

willianpaixao issue comment ethereum/solidity

willianpaixao
willianpaixao

Parallelize macOS build in CI

In https://github.com/ethereum/solidity/issues/11670#issuecomment-954297346 I discovered that our macOS build job in CI takes ~20 min regardless of how many cores the machine has. Apparently the -j flag we put in MAKEFLAGS variable is getting ignored. I think that the build config generated by CMake on macOS is still make-based so I'm not sure why this is the case.

This needs to be investigated. Once we know how to parallelize it, we should adjust the number of threads/processes and machine resource class in CI for the best cost/benefit ratio.

willianpaixao
willianpaixao

Well, I tried but apparently CircleCI wants some schmoney:

Apologies! Your build didn’t run because you haven’t selected a plan that includes macOS yet. Please change to a Performance Plan. If you have any questions please feel free to contact support.

Activity icon
created branch

willianpaixao in willianpaixao/solidity create branch wilianpaixao

createdAt 4 days ago
Activity icon
issue

willianpaixao issue comment ethereum/solidity

willianpaixao
willianpaixao

Parallelize macOS build in CI

In https://github.com/ethereum/solidity/issues/11670#issuecomment-954297346 I discovered that our macOS build job in CI takes ~20 min regardless of how many cores the machine has. Apparently the -j flag we put in MAKEFLAGS variable is getting ignored. I think that the build config generated by CMake on macOS is still make-based so I'm not sure why this is the case.

This needs to be investigated. Once we know how to parallelize it, we should adjust the number of threads/processes and machine resource class in CI for the best cost/benefit ratio.

willianpaixao
willianpaixao

Hi @cameel, very interesting issue.

For over a decade I only saw the -j flag being used without a space as separator, eg, -j4, which raised my eyebrows. Maybe Ubuntu can understand that but MacOS can't. So I would remove the space and fire a pipeline to check.

That said, assuming this was not the problem, maybe we should try a different flag, here are the cmake equialent:

Unfortunately I don't own a Mac that I can try it myself.

push

willianpaixao push willianpaixao/solidity

willianpaixao
willianpaixao

Document address members code and codehash

willianpaixao
willianpaixao

Merge pull request #12516 from fulldecent/feature-docs-address

Document address members code and codehash. Fixes #12495

willianpaixao
willianpaixao

Fix wrong error with immutables when base contract c'tor uses return

willianpaixao
willianpaixao

Merge pull request #12523 from ethereum/immutable-ctor-fail-12379

Fix wrong error with immutables when base contract c'tor uses return

willianpaixao
willianpaixao

ens: Remove global solc replacement (only necessary with Truffle)

willianpaixao
willianpaixao

externalTests: Add force_hardhat_unlimited_contract_size

willianpaixao
willianpaixao
willianpaixao
willianpaixao

Merge pull request #12529 from ethereum/euler-ext-test

External test for Euler

commit sha: 5499c589bcc70f8f2ddd6d650ca2e133e7f2b3b3

push time in 4 days ago
started
started time in 4 days ago
Activity icon
issue

willianpaixao issue comment solidity-docs/translation-guide

willianpaixao
willianpaixao

Repo Automation: Diff Bot for Translation Updates

Problem

The Solidity documentation is being translated through community efforts in the solidity-docs organisation. It is hard and overly complicated for the community translators to keep track and catch up with versions and manually update a translation as new Solidity versions get released.

Solution

Automation! Optimally, we would like to have a bot similar to the reactjs-translation-bot, which would create PRs with new content that needs to be translated every time the original documentation is updated.

Task

To semi-automate the process, it would be great if we could set up a bot, similar to the reactjs.org translation bot. The bot creates PRs for new content to be translated from the original English version of the docs. More info on the bot can be found here and this is how a PR from the bot looks like. More context on the process behind the reactjs bot can be found in this issue.

More Details on the Bot Design and Functions

  • Set up a bot that creates PRs with diff of newly released docs to translate.
  • The solidity/docs developbranch shall be used as a source.
  • The PRs should be created in each of the language repositories (currently this means in the repos of the Indonesian, Japanese, Farsi and Portuguese translations).
  • The bot should create a PR once per day per language repository.
  • The bot should be written in JS, Python or Bash.
  • The bot should be part of the solidity-docs GitHub organization and should add PRs to all the different translation repos.
  • The bot should use Github Actions as a CI.

Relevant Links

willianpaixao
willianpaixao

Thank you for your feedback!

Jan
13
6 days ago
Activity icon
issue

willianpaixao issue comment solidity-docs/translation-guide

willianpaixao
willianpaixao

Repo Automation: Diff Bot for Translation Updates

Problem

The Solidity documentation is being translated through community efforts in the solidity-docs organisation. It is hard and overly complicated for the community translators to keep track and catch up with versions and manually update a translation as new Solidity versions get released.

Solution

Automation! Optimally, we would like to have a bot similar to the reactjs-translation-bot, which would create PRs with new content that needs to be translated every time the original documentation is updated.

Task

To semi-automate the process, it would be great if we could set up a bot, similar to the reactjs.org translation bot. The bot creates PRs for new content to be translated from the original English version of the docs. More info on the bot can be found here and this is how a PR from the bot looks like. More context on the process behind the reactjs bot can be found in this issue.

More Details on the Bot Design and Functions

  • Set up a bot that creates PRs with diff of newly released docs to translate.
  • The solidity/docs developbranch shall be used as a source.
  • The PRs should be created in each of the language repositories (currently this means in the repos of the Indonesian, Japanese, Farsi and Portuguese translations).
  • The bot should create a PR once per day per language repository.
  • The bot should be written in JS, Python or Bash.
  • The bot should be part of the solidity-docs GitHub organization and should add PRs to all the different translation repos.
  • The bot should use Github Actions as a CI.

Relevant Links

willianpaixao
willianpaixao

Hi again @franzihei, I apologize for being so annoying. 😅

I got really intrigued by all this and took another round of POC. Here are my findings:

  1. I created a fork of the original repo, so I could test my new pipeline. It took about four attempts due to incomplete documentation of the Crowdin official integration.
  2. Then I created the .pot and .po files through Sphinx. Since they could be considered intermediary files, I committed to another branch. If they will be merged to develop is a decision to be made by the maintainers.
  3. Then I took the liberty to create a project in Crowdin, created API keys to link with my forked repo.
  4. Made a few translations just to generate some data.
  5. Voilà! A PR was created. The title, message and even periodicity can be tweaked, there are many options available.

I didn't go a step further and tried to publish in Read The Docs, but I trust that my previous POC, in the above screenshot would be enough proof that the site generation picks up the translations once the PR is merged and the pipeline builds and publishes new version with the latest translations.

Note also that only two languages were listed and if a number is considered higher, some improvements should be done.

I still wait for your thoughts.

Activity icon
delete

willianpaixao in willianpaixao/solidity delete branch l10n_crowdin_action

deleted time in 5 days ago
push

willianpaixao push willianpaixao/solidity

willianpaixao
willianpaixao

New Crowdin translations by Github Action

willianpaixao
willianpaixao

Merge pull request #2 from willianpaixao/l10n_crowdin_action

New Crowdin translations by Github Action

commit sha: d217439948dbfe30c9f98f71eabf64eda6dd6584

push time in 5 days ago
pull request

willianpaixao pull request willianpaixao/solidity

willianpaixao
willianpaixao

New Crowdin translations by Github Action

Activity icon
delete

willianpaixao in willianpaixao/solidity delete branch l10n_crowdin_action

deleted time in 5 days ago
push

willianpaixao push willianpaixao/solidity

willianpaixao
willianpaixao

New Crowdin translations by Github Action

willianpaixao
willianpaixao

Merge pull request #1 from willianpaixao/l10n_crowdin_action

New Crowdin translations by Github Action

commit sha: 4a0b3378c5724c376ba09b9097585c72dc1e9a67

push time in 5 days ago
pull request

willianpaixao pull request willianpaixao/solidity

willianpaixao
willianpaixao

New Crowdin translations by Github Action

push

willianpaixao push willianpaixao/solidity

willianpaixao
willianpaixao

docs: experimenting with multi-language Sphinx

commit sha: cf1b4c3660a3ff93867e714a1dab885c40b0cb76

push time in 5 days ago
Activity icon
created branch

willianpaixao in willianpaixao/solidity create branch l10n_branch

createdAt 5 days ago
Activity icon
delete

willianpaixao in willianpaixao/solidity delete branch l10n_branch

deleted time in 5 days ago
push

willianpaixao push willianpaixao/solidity

willianpaixao
willianpaixao

docs: experimenting with multi-language Sphinx

commit sha: af6c61862e7f227c5d2229ef2d3e6271edde89af

push time in 5 days ago
Activity icon
delete

willianpaixao in willianpaixao/solidity delete branch sphinx-multilang

deleted time in 5 days ago
Previous