Skip to content

Releases: theandrew168/bloggulus

v0.3.7

31 Jul 05:24
78ad851
Compare
Choose a tag to compare

Changelog

  • 78ad851 Update deps
  • 156f2f3 Add admin page for managing posts
  • 5a07a30 Add admin page for viewing blogs
  • 5415f70 Enable deleting tags, get a multi-action working
  • 9502b87 Fix headers formatting
  • be85af6 Make fetchAPI helper more universal
  • 27974fa Fix status codes, create auth'd fetch helper
  • 4819c41 Add ButtonLink, make error page nicer, throw more
  • f7ea1e4 Run List+Count queries together, ditch "test in TX" concept
  • f1e7bda Flip routes back to admin required
  • f949334 Remove unused import
  • 3c44c2b Add count to list endpoints, add page for blogs
  • a19598f Make validation messages nicer
  • 86c2ebd Update deps
  • 7b6dc4d Update deps
  • 7190afc Clarify some names
  • 8c5347e Make invalid username / password a 422
  • e852969 Bit more work on error handling
  • 7c3c0b6 Create component for SearchInput
  • 2807ed2 Omit field if empty
  • 2ecb624 Convert errors from a map to a list
  • e203fd6 Make the auth pages look a bit nicer
  • ede02e9 Limit cards to three tags
  • ac6a960 Remove API docs link
  • a495237 Show "Relevant" when searching
  • 6b10420 Move postcss config into package.json
  • b256677 Get register and login actions working
  • 4e3706f Get a basic layout working, prep auth pages
  • e98f0b1 Organize components and pages into folders
  • 32d45aa Split out a few components
  • ca212f9 Get the search bar working
  • 36810cf More frontend work
  • bba07ba Work on the basic site layout
  • b9ba022 Start using Tailwind CSS
  • c275f81 Add ErrorPage fallback
  • 7702052 Use vite dev to observe react's debug behavior
  • 281daf3 Get started with React Router
  • 15f6dd9 Drop SvelteKit SPA, prep for React
  • 4a764d9 Get auth working via local storage... kinda messy
  • 32c077d Update deps
  • 590a6eb Remove sort from goreleaser changelog

v0.3.6

08 Jul 04:38
d7a938b
Compare
Choose a tag to compare

Changelog

  • 17644d8 Adapt May Ryer's middleware Adapter pattern
  • 9396860 Add FE pages for blogs
  • 62a698c Add RegisterType fix for UTC timestamps
  • 4a10774 Add account.is_admin column
  • 0dc4e39 Add backend endpoint for creating tokens
  • 5f57250 Add deploy command to Makefile
  • f0e6061 Add endpoint and test for creating accounts
  • e58b872 Add endpoint for creating tags
  • 84d95c0 Add endpoint for deleting blogs
  • 357c6ee Add endpoint for deleting posts
  • 9733fc8 Add endpoint for deleting tags
  • 35fcece Add extra checks to creation tests
  • 806528b Add goreleaser version
  • 5a3c15f Add middleware and tests for checking user auth
  • 21fa126 Add migrations, models, and storage for Accounts and Tokens
  • f8a32e5 Add missing comment
  • 65b7abf Add missing return to AccountRequired mware
  • 858d50c Add mware for AccountRequired and AccountOptional
  • d600bcb Add other API doc renderers for fun
  • 3ea48fe Add posts to blog page
  • 616e151 Add route for managing individual posts
  • 10295b0 Add test and clearer error message for dupe username
  • 02c8568 Add test for AdminRequired middleware
  • e4bd3f6 Add tests for middleware and validator
  • 220cedb Add timeutil package for rounded UTC times
  • 3057182 Add vite build --watch command, update Makefile
  • 80260f7 Delete reader subpackages
  • 6e2de6f Fix an old admin ref in a comment
  • 29a3146 Fix some bugs, remove tz from PG timestamps, add endpoint for adding blogs
  • 0ae0d89 Fix test name
  • bb77011 Fix ts_query call for tags, add some FE deps
  • 4798e2e Format middleware usage
  • c77207a Format routes
  • 2e8003a Increase SyncInterval and SyncCooldown durations
  • 9372fae Lock "meta" routes behind auth middleware
  • 23d1040 Make GenerateToken visible
  • aca0c74 Make posts a per-blog item
  • 33914a4 Make route IDs more specific
  • 081f9c3 Migrate to the Go 1.22 enhanced router
  • d23360e Move web fetch impl to fetch package
  • 15416f5 Refactor a couple more routes
  • d834c23 Refactor a few handlers to closure their deps
  • bf96e8f Refactor blog handlers
  • bc7f29c Refactor post handlers
  • 9246aee Refactor tag handlers
  • d7a938b Remove --skip-validate from goreleaser command
  • aa1fbaa Remove TODO
  • b3d18cc Remove admin subpackage from api
  • da98325 Remove admin subpackages for model and storage
  • 3f094ec Remove superforms and zod, just use FormData
  • b68fd2f Rename FE code from Post to Article
  • d07f0f5 Rename Middleware type and Use func
  • c50d27b Rename Router() to Handler()
  • b68bf8a Rename domain package to model
  • bb9333a Rename interface{} to any
  • d5816f5 Rename reader/post to reader/article
  • 131ad61 Rename some test vars, prep for testing w/ auth
  • 92563db Return errors from NewFoo domain obj constructors
  • cc2bfeb Return http.Handlers from handler methods
  • 1b1347a Round timestamps to microseconds (which is what PG supports)
  • 10db980 Simplify API handler creation
  • 404a517 Simplify create tag form
  • fa73aa7 Simplify token storage API
  • 1651b7c Simplify web handler, ditch application concept
  • f2c60cc Simplify web package structure
  • e42b6a6 Specify a ttl when creating tokens
  • bf5f3be Start messing around with superforms
  • f8b4348 Start working on the FE tags page
  • b57d4f4 Tweak a few tests
  • ee039c8 Tweak the "add tag" form a bit
  • d30b33f Undo changes to docker compose file
  • e4b8f88 Undo timestamp migration, use time.Equal for comparison
  • 73baac3 Update a couple comments
  • 112128d Update deps
  • 016f675 Update deps
  • 2c6199e Update deps
  • 8f96390 Update deps
  • 2963c27 Update deps
  • 382799e Update deps
  • 56b598a Update deps
  • 1f29560 Update deps
  • 14d5e0a Update deps
  • 3785343 Update deps
  • 1c8eb42 Update deps, add a couple comments
  • 56c4fdd Update frontend deps
  • 020abec Update goreleaser-action version
  • 3004a50 Update sync service test name
  • 15aaf0b Use actions/setup-go@v5

v0.3.5

27 Apr 22:14
dd267f1
Compare
Choose a tag to compare

Changelog

v0.3.4

21 Apr 06:16
8bac604
Compare
Choose a tag to compare

Changelog

  • 8bac604 Add concurrency w/ upper limit to blog sync
  • 2da6cd7 Fix overflowing tags on smaller screens
  • 89d0233 Update comment, add a TODO

v0.3.3

20 Apr 04:28
21cd395
Compare
Choose a tag to compare

Changelog

  • 21cd395 Add SyncCooldown concept
  • 5a7df2c Add title and meta description

v0.3.2

18 Apr 04:49
775fe1a
Compare
Choose a tag to compare

Changelog

  • 36615a7 Add ListAll method to BlogStorage
  • 775fe1a Fix SyncInterval name, limit freq to an hour
  • 766d83d Make sync service runnable

v0.3.1

17 Apr 05:57
efe0543
Compare
Choose a tag to compare

Changelog

  • efe0543 Simplify release file names

v0.3.0

17 Apr 05:36
70d9c3d
Compare
Choose a tag to compare

Changelog

  • efd507e Achieve parity with bloggulus-svelte tests!
  • beac6d7 Add Node setup to GHA workflows
  • 8557665 Add a few missing integ tests
  • f30f999 Add a few more tests
  • 330dc6c Add a few more tests, add some sentinel errors
  • 9599ca3 Add config tests
  • b6263fd Add endpoint for listing / searching reader posts
  • bac55f1 Add endpoint for tags
  • 01832e8 Add metadata columns to each table
  • 556d0a1 Add migration to convert integer IDs to UUIDs
  • cba51df Add mock feed fetcher
  • f3c9eea Add more parsing tests (and fix a bug!)
  • a1c84ce Add post count to API response
  • 4fed58c Add proper "See More" logic
  • 04dc4f4 Add some test asserts and simplify tests
  • 65a4a3e Add storage logic to postgres/admin/storage package
  • a1e1429 Add storage methods for counting posts
  • dd85757 Add t.Parallel() to remaining tests
  • 3997564 Add tag model
  • eccb33b Add tests for blog and post updates
  • ba9faf0 Add tests for parsing and hydrating feeds
  • 1b2dd72 Add tests for skipping posts w/o url or title
  • a103707 Call tag.CheckDelete before deletion
  • f3b9778 Cleanup some test assertions
  • d9f88bf Convert remaining prints to slogs
  • 04fb572 Create api/util package for errors / json
  • de0974f Delete and replace old postgres errors
  • 2a71380 Delete old storage package, migrate old callers
  • f28110a Ensure post publishedAt dates are converted to UTC
  • 4b6fba1 Ensure timestamps are in UTC
  • da5e038 Fix broken test
  • d0e1887 Fix domain model usage in api tests
  • 3c9fc9b Fix embedding
  • 605cd98 Fix goreleaser
  • fc0a874 Fix mock storage tests to run in parallel (add mutex)
  • b7b1568 Fix typo in migration
  • 49beecf Format migrations using tabs
  • 63d7226 Get pagination working
  • 6707363 Get the error page working
  • 1eec0b9 Get the frontend matching bloggulus-svelte
  • 41ee1e6 Impl mock storage interfaces
  • ae33ce7 Impl postgres queries for listing / searching reader posts
  • 93b09df Impl simpler marshalling for other types
  • de1ca81 Implement remaining sync logic
  • eba4fee Merge database and migrate into postgres package
  • b380bef Modernize migrations
  • b94b7d1 Move ErrRollback to storage package
  • 8066718 Move Storage interface tests to suite package
  • 455c2b1 Move fetch mocks into sub package
  • 2f21ad0 Move frontend files into subdir, impl cond embedding
  • b8119ed Move params to util package
  • e24af3c Move postgres admin storage into domain
  • 5cb2b98 Move postgres reader storage to domain
  • f7811b3 Move validator into web package
  • 063e59c Move validator package to api
  • ec44087 Nest admin API routes under api/admin package
  • 88e371d Optimize reader post queries, cleanup frontend
  • 4761930 Refactor Blog to be a proper domain object
  • 89e33b4 Refactor Post to be a proper domain model
  • 3e7667e Refactor code to use UUIDs for domain model IDs
  • eb74772 Refactor fetch package
  • 1212fd3 Refactor storage system a bit
  • 88d10d5 Refactor web packages, simplify running the web server
  • 40b4dc1 Remove obsolete version from compose file
  • c9bf682 Remove old non-domain code, verify addblog works
  • 70c19d9 Remove old template frontend, prep svelte
  • 7ea40e8 Remove storage test suite idea
  • 288c8a6 Remove unused code
  • 2968c62 Rename internal/ to backend/
  • 61768b7 Rename post contents->content
  • a3007da Rename storage->store when using
  • 7b93977 Rename test->suite, todo->test in storage
  • b4838d7 Rename testutil->test
  • f22449d Rename todo.go to ddd.go (just has ideas)
  • 2c83b4d Replace print statements with slog
  • 4a01fa7 Run all tests in parallel
  • 68b9466 Run storage tests within transactions (and rollback)
  • 04b6464 Run tests in a separate DB
  • cb5daff Show some post data on the frontend!
  • 3afec61 Simplify admin domain mock func names
  • 3c190ab Simplify domain/table marshalling for tags
  • c866d9a Simplify how the frontend embedding works
  • d8f0061 Simplify storage mock helper names
  • 7feddef Split testutil package up
  • 18bb914 Start thinking about more tests
  • 0191939 Start work on SyncService
  • 9409795 Start work on multi-domain idea
  • 2b8683d Start work on reader domain
  • b52d01c Start writing a few SyncService tests
  • ea6b210 Tone down the abstraction a bit
  • 5180efe Update GHA test workflow
  • 70d9c3d Update Makefile and release workflow
  • 3586382 Update README, fix rapi-doc viewer
  • 50e66c7 Update Tag to be a proper domain object
  • 8e82bc1 Update deps
  • 32d0b73 Update deps
  • 8622165 Update deps
  • 3590689 Update deps
  • abb2d11 Update deps
  • 10f1d51 Update deps
  • 4fb4539 Update deps, knockout a small TODO
  • 1eeedd7 Update docker compose command in GHA workflow
  • 5002ba7 Update svelte config
  • cceb799 Use page/size for API pagination
  • db7e740 Use plural API routes
  • ca7e621 Use the app.Router() pattern for top-level app
  • 49d6cc6 Various cleaning and organization
  • 5d9223c Write storage tests in a reusable way

v0.2.2

25 Feb 18:50
500cb00
Compare
Choose a tag to compare

Changelog

v0.2.1

28 Jul 07:12
31f785c
Compare
Choose a tag to compare

Changelog

  • 31f785c Log when a feed is skipped