Skip to content

Latest commit

 

History

History
333 lines (255 loc) · 31 KB

CHANGELOG.md

File metadata and controls

333 lines (255 loc) · 31 KB

Changelog

Version 1.4.0

  • Don't adjust the ranks automatically after adding an assertion (3de4f58)
  • The make_leaderboard() method is public, it's used in Tahrir (fbf1117)

Version 1.3.0

  • Store a user's current value for a badge in the DB (8a79422)
  • Fix Alembic config (8d19683)
  • Update dependencies

Version 1.2.0

  • Change the scripts to use a Flask-style config file instead of the Paste/Pyramid one (5db2f11)
  • Update dependencies

Version 1.1.5

  • Make get_assertions_by_email() case insensitive (92084ed)
  • Add a relationship on the Person table (98ad984)
  • Minor tests refactoring (85a9aa1)
  • Don't create a sessionmaker just to set the recipient in assertions (47eafdd)
  • Update dependencies

Version 1.1.4

  • fix(deps): update dependency tahrir-messages to v2 (757c4b6)
  • chore(deps): update dependencies in lockfile (cd735d8)
  • chore(deps): update pre-commit hook charliermarsh/ruff-pre-commit to v0.4.8 (6a40308)

Version 1.1.3

  • Refactor getting the db manager from the db URI (17dea50)
  • Update dependencies in lockfile and the ruff pre-commit hook (a27cadc, b45bcfa)

Version 1.1.2

  • Fix the release github action (3f1e397)
  • add_invitation(): don't assume a random user if not given (091b06f)

Version 1.1.1

  • Improve the populate-avatars script (ea1cd9d)

Version 1.1.0

  • Fix the github action to trigger on tags (6edf093)
  • Add a column for the avatar (0841366)
  • Add a script to populate the user's avatars from FASJSON (2d80012)
  • Convert the changelog to markdown (ade7496)
  • Update dependencies

Version 1.0.0

  • Add tox as a test runner (31a84c4)
  • Migrate tahrir-api from Python2 to Python3 (1f55486)
  • SQLAlchemy: explicitly declare order_by expression as text (#36) (b6f4984)
  • Avoid configuring Session since it already is scoped and will have no effect (a06f8cb)
  • Add a few step to start hack on the project in development section README (56a289d)
  • Add CI with Github Actions (05f6803)
  • Explicitely convert Person to json before sending it to fedora-messaging (bc18ba9)
  • send fedoramessaging objects in notifications_callbacks (5a92e20)
  • By default, don't include people who have opted out in get_all_persons() (60f9a4c)
  • Use Poetry (3e0b926)
  • Use Black and Ruff (2121f3b)
  • Use pytest rather than nose (182ed36)
  • Add pre-commit config (0f549aa)
  • add renovate config (00e83e4)
  • Drop zope.sqlalchemy (63cea5b)
  • Use sqlalchemy-helpers (83ef45c)
  • Replace datetime.datetime.utcnow() as is deprecated (d985b4a)
  • Add a couple properties on Person instances (d163926)
  • Replace the __json__() method by as_dict() (c0d8702)

Version 0.8.1

Pull Requests

  • (@sayanchowdhury) #40, Fix the version of SQLAlchemy which broke while doing the release #40

Commits

Version 0.8.0

Pull Requests

  • (@sayanchowdhury) #38, Changes to the dbapi and the models for the Paths #38
  • (@lubomir) #37, Add series information to each badge #37
  • (@lubomir) #39, Skip badges with series in populate script #39

Commits

Version 0.7.2

  • Add a dbapi function to check if an authorization exists d385c0435
  • Merge pull request #34 from fedora-infra/feature/authorization-exists-check 0a263218f
  • add badge_name_to_id function in dbapi f4c2e7ba9
  • let's put the badge_name_to_id function in util.py a231489d6
  • Merge pull request #35 from fedora-infra/feature/badge-name-to-id c2ac5a07b
  • 0.7.1 1d47ca897
  • 0.7.1 f1712f527

Version 0.7.0

  • Add a column to optionally associate stls with a badge. 91a8353c4
  • Merge pull request #33 from fedora-infra/feature/stls 2082a782c

Version 0.6.1

  • Allow initialize_tahrir_db to be run on openshift. 2816dd57d
  • Look for OPENSHIFT_APP_NAME instead. fbc8f8bd5
  • Support postgres as well as mysql. 81699e3e0
  • Merge pull request #32 from fedora-infra/feature/openshiftery 63047fba3

Version 0.6.0

  • Add a new field to optionally track the originating event for a badge. 992b3d702
  • Actually check that the link got stuck in the db. 13694c6af
  • Merge pull request #31 from fedora-infra/feature/tracking e77a7ae74

Version 0.5.1

  • Change API to be consistent in allowing email for add_invitation 26b68e1c3
  • Merge pull request #30 from fedora-infra/feature/admin-revamp 394f605de

Version 0.5.0

  • Add an authz table. 72e60c0b0
  • pep8. 95b9c69f2
  • Add a method for checking evaluating authorization. c52b4589b
  • Add an add_authorization api func. dd40ba9f5
  • Fix the authorized check. d42cb2bb5
  • Use utcnow, not tz now. a26c2c374
  • Use python-arrow to return a relative date for expiration. a6afe7bb1
  • Replace a few more instances of .now with .utcnow. d9c952b10
  • Merge pull request #29 from fedora-infra/feature/authz 12694a509

Version 0.4.2

  • Make sqlalchemy version explicit. 68e3f5822

Version 0.4.1

  • PEP8 Guideline in: dbapi.py d33ec07f4
  • Import don't use in model.py 1a1d21149
  • PEP8 Guideline in: uitls.py b9768c95a
  • Add import pprint in script initializedb.py 78c40ee65
  • Add again Person.opt_out == False 07376fce7
  • Merge pull request #23 from yograterol/develop fd808bbac
  • users with same amount of badges share rank 71fad32db
  • fix "overtaking" when updating a person's rank c042ce583
  • update tied rank unit tests 6d0066865
  • fix SA unicode warning in unit tests ffa90dff1
  • appease pep8 1a1fab0e8
  • Merge pull request #27 from nphilipp/develop 70d94bb82
  • Send the badge id along with fedmsg. 0e5f15ae4
  • Tests for fedmsg badge_id. d4ae91108
  • Merge pull request #28 from fedora-infra/feature/badge-id-for-fedmsg c018245c5

Version 0.4.0

  • Watch out for the other 'person' in the scope. de8efd36f
  • Preserve order here. 306da8eec
  • Merge pull request #20 from fedora-infra/feature/person-scope 0c023d474
  • Pull in the ordereddict on py2.6. 4700ef8af
  • Merge pull request #21 from fedora-infra/feature/preserve_leaderboard_order abc5299ff
  • Add a last_login field for persons. 0e08f1501
  • Add API interface for last-login modifications. 6fef6f7ba
  • Make the note_login signature symmetric with get_person. fb6f2b6c8
  • Merge pull request #22 from fedora-infra/feature/add-last-login 3798a82d7

Version 0.3.0

  • Clean up readme. 79fca2522
  • Harsher slugification. 0f35df3a3
  • Add a new column to the persons model to keep track of rank. 7fa90759f
  • Add failing test for cached ranking. e3a19392c
  • Isolate those tests a little more. e0c702ed4
  • Add a __repr__ to make debugging tests easier. be0ffc229
  • Recalculate and cache rank each time a new assertion is awarded. f36fc6cdb
  • Expose a Person's rank in __json__. c948f722c
  • Accept a notification callback and invoke it when rank changes. a1ba93054
  • Remove spurious backslash. 9e30a3e81
  • Simplify that adjust_ranks call. c899188d6
  • Add a test for pre-existing users with no cached rank. 4d5db0f95
  • Additionally, send the badge award message too. Because that just makes sense. 0e6d5b22c
  • Introduce timelimits to the leaderboard maker. 31d67a598
  • Also.. watch out for these. 46c9e7389
  • Revert "Also.. watch out for these." 7d1dd0d62
  • Change that fedmsg topic from "update" to "advance" (since it will always be advancing, and we never emit messages for rank slipping). 8b6be130e
  • Add a comment on the meaning of the 'start' and 'stop' parameters. 0dd45b85a
  • Add a docstring for _adjust_ranks. 2bc1d8eda
  • Explicitly label the sq.func('count') interface. bf2994d8c
  • Nuke unicode_literals. 4bdbe3e98
  • Make ranking-tie test a little more forgiving since database ordering is undefined. 8bb7db1fd
  • Add a note to the comment about null rank. 899564420
  • assert_in fails on py2.6, so roll our own. f296da1ec
  • Merge pull request #19 from fedora-infra/feature/ranking b23db318c

Version 0.2.8

  • Unfinished get_badges_from_tags code from yesterday. 94bd55030
  • Merge branch 'develop' into feature/badges-from-tags e82b15a8f
  • More progress on badges_from_tags, just gotta figure out this last part... d1d020dbf
  • Woo, get_badges_from_tags method is working! 7589178a1
  • Merge branch 'feature/badges-from-tags' into develop d87ea66ae
  • Misplaced paren. b3478f916
  • Fix bug where duplicate badges were returned by get_badges_from_tags. df64ba362
  • Update dbapi.py 286a57dd2
  • Implement Threebean's idea for match_all, with a few tweaks. Tests will still not pass, because we need to make "contains" look for whole words, and not just parts. 0c4a50abe
  • Add a query for opt-out to the api. 455499e48
  • Remove q debugging from tags test and enable it. Will still fail. a25fdc0f0
  • Make sure tags string has a trailing comma when adding a badge. c802d8000
  • Make sure tags actually exists before running .endswith() on it. 775ab1dc0
  • Complete get_badges_from_tags, and all tests are passing! :D 41f16bb0d
  • Merge pull request #18 from Qalthos/patch-1 9f187462c

Version 0.2.7

  • Datetime objects are not JSON serializable. a9ccdc8c6
  • Add get_invitation method to get an invite by its unique ID. 585b39e98
  • Fix comical bug. 6000d623a
  • Make add_badge always return a smart id. 78e13b4da
  • Actually use that badge_id. a90203a67

Version 0.2.6

  • Allow our caller to pass in an already created session object. 2620f7bb9
  • Be less odd. d710209d8
  • Autocommit after certain method calls, but only when configured to do so. 257ec1b5e
  • Make get person/badge and badge/person exists methods case-insensitive. 90a82a97f
  • Make get_assertions_by_badge case-insensitive. e07af017c
  • PEP 8. 88f89f839
  • Add method to get invitations by issuer ID. 8160010c4
  • Invitations have persons as issuers, not Issuers. 7de2e7b3c

Version 0.2.5

Version 0.2.4

Version 0.2.3

  • Fix syntax error in alembic script. 3634d46c1
  • persons.id is actually an integer, so this foreign key must match. 99088b584
  • Alembic upgrade script to fix foreign key mismatch. d19a0a9a5
  • Patch to allow creating a Person with a website and a bio, as well. 19311fd8d
  • Allow add_badge to take tags. 57b32e6dd
  • Add two new columns for Person we will need. 43bce48cf
  • Alembic script for the last DB upgrade. b048918b4
  • Merge pull request #17 from fedora-infra/feature/person.created_on b572ea3e7
  • Merge pull request #16 from fedora-infra/feature/foreign-key-mismatch 58b10f435
  • Put things in a straight line. b8b008178

Version 0.2.2

  • Include alembic stuff and tests when we do a release to pypi. 5f7a6e23a

Version 0.2.1

  • Allow add_person to set the nickname. 0a6daea03
  • person_exists should accept other arguments. 0f53c9154
  • Merge pull request #12 from fedora-infra/feature/nickname-setting 09ad98118
  • Allow getting a user by id and nickname. be32cb9c2
  • Merge pull request #13 from fedora-infra/feature/nickname-getting cda6a4611
  • Fix typo. c7c369750
  • Update link to Tahrir in readme. 344fdbc11
  • Stop leaking sqlalchemy sessions. Fixes #14. ab1de52e7
  • Merge pull request #15 from fedora-infra/feature/stop-session-leak 63dc66811
  • PEP8. 71c7cb91d

Version 0.2.0

  • Remove the need for a "tahrir.salt" config value. 3d44dc91f
  • Remove an old print statement. bb5ecf9f0
  • Merge pull request #10 from fedora-infra/feature/simple-salts 9a1e415c7
  • add initial alembic files, point at tahrir.db, and basic readme e434673c7
  • Add swap file extensions to .gitignore 1d6579c73
  • Make Alembic run migrations as a transaction, rolling back on OperationError. Also add a migration script to add a column. f661a7c62
  • Print repr() of OperationalError. 5ae3e40e2
  • Add 3 more Alembic scripts to complete Tahrir model changes for now. 46a4b2f59
  • Merge branch 'feature/alembic' into develop d33a96a31
  • Update models to match Alembic changes. ab28f4c14
  • Make created_on default values be the current datetime. 987aa7bcc
  • Alembic script to add created_by to invitations table. d51427e9e
  • Add invitations table created_by field to model. Fixes Tahrir #58. 55d8803d9
  • Merge branch 'feature/issue-58' into develop 6842648e4
  • Make Alembic scripts properly include nullable args. (Thanks, @puiterwijk!) 47c14055a
  • Make issued_on in assertions table not nullable and set default to datetime.now. 57b03be29
  • Fix failing test (was failing on add_invitation). 1015377cd
  • Fix unicode warning thrown in tests (thanks @Qalthos!) ee3b008bd
  • Add get_all_assertions and get_all_persons methods. 5a1e07ae2
  • Fix get_assertions_by_email so it actually functions. 42fe14005
  • Add get_person_email and make person_exists take an email OR id. f056f26d7
  • Merge pull request #11 from fedora-infra/feature/TahrirDatabase-improvements e2b485c9e