Commit graph

17 commits

Author SHA1 Message Date
Henrique Moody
be72a54845
Add templates to each rule documentation
They only know what message a rule produces when they try running it.
Including the messages in the documentation will make it easier for
people to know what to expect.

There are a couple of undocumented placeholders, but I can live with
that for now.
2024-12-06 00:21:47 +01:00
Henrique Moody
061a3c9c09
Rename method "validate()" to "isValid()"
The method has been renamed some time ago, but I haven't updated the
documentation to cause less confusion. Now that I want to start updating
the documentation, I switched the default branch on GitHub to the latest
stable version, so I assume there will be less confusion in the
documentation, and I can start updating the docs for the next version.
2024-12-02 22:11:57 +01:00
Henrique Moody
2610a380dc
Replace "LazyConsecutive" with "Consecutive"
With this and the Lazy rule, the LazyConsecutive lost its purpose.

While working on it, I did refactor the Domain rule a bit, but mainly to
check how this rule could behave.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2024-03-06 23:57:49 +01:00
Henrique Moody
41245f663f
Replace "KeyValue" with "LazyConsecutive" rule
I want to avoid having the Factory inside the rules. If a rule needs to
create another, it can simply instantiate that. The "KeyValue" rule does
too many things under the hood, and the behavior can be unpredictable.

The "LazyConsecutive" rule makes the validation more explicit and way
more flexible, as there could be other cases in which someone only wants
to validate something if the previous validator passes.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2024-02-22 20:45:50 +01:00
Henrique Moody
44e769a271
Use PHP ISO Codes in the "SubdivisionCode" rule
Since we now have PHP ISO Codes as a dependency[1], it doesn't make
sense to keep dealing with this data ourselves.

[1]: 04b2722d02

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2024-02-22 19:12:32 +01:00
Henrique Moody
fcb6ea5fdb
Fix broken documentation links
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2024-02-19 11:34:26 +01:00
Henrique Moody
4c21a7ffc9
Revert "Use "sokil/php-isocodes" on SubdivisionCode"
This reverts commit 9c9c76ebfb.
2021-03-19 15:12:45 +01:00
Henrique Moody
9c9c76ebfb
Use "sokil/php-isocodes" on SubdivisionCode
Inside the "data/" directory, we have files with lists of subdivisions
that need to be updated. We have to update them manually, or we automate
that task with a script and GitHub actions.

The two options are very time consuming and also not ideal. We don't
want to deal with that problem and, thinking that the user of this
library may want to show the data that we validate, we should create a
whole library to make it more usable.

The "sokil/php-isocodes" is a simple library that, even supports
translations. It's frequently updated and has gone to major performance
updates.

I am not fond of the idea of requiring an external library to install
Validation, as I have seen that gone wrong before [1]. Ideally, that
would be an optional dependency for people who would like to use those
rules, but to make that happen, we need to release a MAJOR version.

[1]: d072b4de6a

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2021-02-06 15:09:04 +01:00
Henrique Moody
2d0f56d9cb
Merge branch '1.1'
This commit will revert the update of subdivision codes [1] since the
way we store this data is very different from the merged branch.

[1]: 8b8f7db713

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2019-05-29 23:17:53 +02:00
Henrique Moody
8b8f7db713
Update list of subdivision codes
To update the list of subdivisions, I decided to use the iso-codes [1]
instead of GeoNames [2] as it seems like that one is more often updated.

This commit will also create a Bash script to update that list in the
future.

[1]: https://salsa.debian.org/iso-codes-team/iso-codes
[2]: http://www.geonames.org/

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2019-05-26 16:18:49 +02:00
Henrique Moody
c522f6235c
Remove "IdentityCard" in favor of "PolishIdCard"
The only Identity Card we have is the Polish one, that said it makes
more sense to have a specific rule that only validates that, rather than
having a "IdentityCard" rule that only accepts one value.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2019-05-12 00:22:45 +02:00
Henrique Moody
f23b3a522a
Remove "Vatin" in favor of "Nip"
There are not other VATINs besides the one from Poland. That said, it
makes more sense to have a specific rule that only validates NIP.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2019-05-11 23:44:10 +02:00
Henrique Moody
10df3211f5
Add "Categorization" section to rule documentations
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2019-05-11 19:16:21 +02:00
Henrique Moody
a00617bcad
Merge branch '1.1' 2018-12-11 13:31:50 +01:00
Henrique Moody
a009286ba6
Update "See also" section in the rules's documentation
Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-12-11 13:19:52 +01:00
Henrique Moody
4354652195
Merge branch '1.1' 2018-08-23 02:12:44 +02:00
Henrique Moody
52614d600d
Organize documentation for "Read the Docs"
The current documentation is hosted via GitHub pages rendered by
"Couscous". Every time we need a new version of the documentation
published we need to manually execute the "couscous".

This commit reorganize the documentation to be published to
"Read the Docs" because it will also allow us to have documentations per
version of the library most importantly provider a search field for the
documentation.

The documentation will be then published on:
https://respect-validation.readthedocs.io/

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2018-08-23 01:59:39 +02:00
Renamed from docs/SubdivisionCode.md (Browse further)