Skip to content

Releases: atomicdata-dev/atomic-server

v0.40.0

07 Oct 12:22
Compare
Choose a tag to compare

Atomic-Server

  • Speed up Commits by bundling DB transactions #297
  • Introduce Db::apply_transaction and Storelike::apply_commit
  • Deprecate add_atom_to_index and remove_atom_from_index as public methods.

Atomic Browser

  • #952 Add templates containing pre made ontologies and resources.
  • #970 Add "show commit" button in History
  • #968 Allow users to pick files by entering a subject into the file picker search bar.
  • #969 Fix markdown editor sometimes doesn't update the value after saving.
  • #975 Add create button to resource selector without classtype.
  • Fix markdown editor closing the edit page when a button is clicked.
  • Add an edit button to the default resource view.

@tomic/lib

  • BREAKING CHANGE: removed the importJsonAdString function.
  • Added store.importJsonAD() method.
  • Added support for commonJS modules.

@tomic/cli

  • Fix shortnames in externals.ts are not converted to camelCase.
  • Filter out duplicate classes and properties in generated types.

@tomic/create-template

  • Added @tomic/create-template package to create new templates.

v0.39.0

21 Aug 13:43
Compare
Choose a tag to compare

AtomicServer

  • The download endpoint can now optimize images on the fly. This is controlled via query parameters. #257
  • Added export endpoint for exporting resources to other formats. Currently only supports exporting tables to csv. #925

Atomic Browser

  • #855 Add a dialog that shows how to fetch and use the current resource in your code.
  • #896 Fix an issue where sidebar items require a double tap on iOS.
  • Updated look of the default resource form.
  • #896 Fix an issue where sidebar items require a double tap on iOS.
  • Updated the look & feel of the sidebar a bit.
  • #893 Fix tables not showing any rows when viewing from a different server.
  • Fix an issue where the resource-array properties would be set to an empty array instead of removing the property when removing all items in the input.
  • Fix an issue where dropdown menus sometimes jump from the upper left corner of the screen.
  • Added a full page view for tags.
  • Redesigned the ontology page.
  • Moved the resource context menu to the top of the page.
  • #861 Fix long usernames overflowing on the share page.
  • #906 Reset changes after clicking the cancel button in a form or navigating away.
  • #914 Fix an issue where changing the subject in a new resource form could update the parent of existing resources if their subject matched the new subject.
  • #925 Added export to CSV option to tables.
  • #919 Automatically sort classes and properties in the ontology editor.
  • #936 Updated the address bar to make it clearer it's also search bar.

@tomic/lib

  • Added LocalChange event to Resource.
  • Added resource.refresh() method.
  • Removed cross-fetch, if your environment does not support fetch make sure to add a polyfill or inject one using store.injectFetch().

@tomic/react

  • BREAKING CHANGE: Removed the useLocalStorage hook.
  • When using any useValue type hook, values will now update when local changes are made to the resource from elsewhere in the app.
  • #257 Added <Image /> component that automatically optimizes images for the web.

@tomic/svelte

  • #257 Added <Image /> component that automatically optimizes images for the web.

v0.38.0

08 Jun 14:48
Compare
Choose a tag to compare
  • Table + Ontology integration => way more consistent data modelling UX
  • Drag & drop items in the sidebar + resource arrays
  • Improved multi-resource handling in tables
  • Various fixes, API updates and improvements

Atomic Browser

  • #845 Add option to create instances and tables from the ontology view.
  • #845 Add default Ontology option to drives.
  • #841 Add better inputs for Timestamp and Date datatypes.
  • #842 Add media picker for properties with classtype file.
  • #850 Add drag & drop sorting to ResourceArray inputs.
  • #757 Add drag & drop sorting to sidebar.
  • #873 Add option to allow multiple resources in relation columns (Tables).

@tomic/lib

  • #840 Added store.search().
  • Deprecated resource.getSubject() in favor of resource.subject.
  • Deprecated store.getResouceAsync() in favor of store.getResource().
  • Deprecated resource.pushPropval() in favor of resource.push().
  • Deprecated resource.removePropval() in favor of resource.remove().
  • Added resource.matchClass() method.
  • Added resource.setVersion() method.
  • Added collection.getMembersOnPage() method.
  • Added collection.totalPages.
  • BREAKING CHANGE: Renamed resource.getCommitsCollection to resource.getCommitsCollectionSubject.
  • BREAKING CHANGE: resource.getChildrenCollection() now returns a Promise<Collection> instead of a subject.
  • BREAKING CHANGE: resource.createSubject() no longer accepts a class name as an argument and defaults to a fully random subject.
  • BREAKING CHANGE: Resource now keeps a reference to store internally, therefore all methods that required you to pass a store have been changed to not require a store.
    These methods are:
    • resource.canWrite()
    • resource.getHistory()
    • resource.getRights()
    • resource.destroy()
    • resource.save()
    • resource.set()
    • resource.removeClasses()
    • resource.addClasses()

@tomic/react

  • Added useCollectionPage hook.
  • Fix bug where useCollection would fetch the collection twice on mount.
  • useServerURL no longer stores the server url in localstorage.

@tomic/cli

  • #837 Fix timestamp is mapped to string instead of number.
  • #831 Give clear error when trying to generate types from a non ontology resource
  • #830 Create output folder if it doesn't exist
  • Use type import in generated files.

Rust Cli & Lib

  • Remove process-management feature #324 #334
  • Add atomic_lib::client::search for building queries #778
  • Add atomic-cli search command #778
  • Migrate atomic_cli to use the derive API #890

v0.37.0

01 Feb 10:34
Compare
Choose a tag to compare

AtomicServer & Rust libraries

  • Refactor atomic_lib::Resource propval methods (e.g. set_propval => set), make them chainable. #822
  • Make set_propval and set_propval_shortname chainable #785
  • Deterministic serialization JSON AD #794
  • Use musl + alpine builds for docker images, way smaller images #620
  • Support multi-platform docker builds #731
  • Remove deprecated ENV vars #732
  • Fix no Agent as drive
  • Add clear option to error component (resets all front-end state)
  • Add Agent::from_secret #785
  • Don't use default agent when fetching with Db #787
  • Fix HTTPS / TLS setup #768

Atomic Browser

  • #747 Show ontology classes on new resource page.
  • #770 Display more info on search result page.
  • #771 Tables: Don't paste in multiple rows when focussed on an input
  • #758 Fix Relation column forms to close when clicking on the searchbox
  • #780 Use tags in ontology editor to create enum properties.
  • #810 Add button to resource selectors to navigate to the selected resource.
  • #764 Add option to format numbers as currency in tables.
  • #819 Fix number input always shows 'required' even when it's optional.
  • #816 Fix bug where editing a column in a table would not submit when pressing enter.
  • Fix server not rebuilding client when files changed.
  • Added persistent scrollbar to table
  • Improved table header UX
  • Numbers in tables now respect user locale

@tomic/lib

  • #798 Add store.newResource() to make creating new resources more easy.
  • Always fetch all resources after setting + authenticating new agent with websockets #686
  • Add progress callback to resource.getHistory() And increased its performance for resources with a large number of commits #745
  • Fix websocket bug on port localhost with port 80

v0.36.1

11 Dec 15:18
Compare
Choose a tag to compare
  • Fix locally searching for atomicdata.dev resources in external servers #706
  • Use Earthly for CI: building, testing, pushing Docker images #576
  • Host @tomic NPM docs on Netlify #707
  • Deprecate Tauri Desktop build #718
  • Merge Docs repository into this one #719

v0.36.0

06 Nov 13:14
Compare
Choose a tag to compare

AtomicServer

  • Requires --rebuild-index
  • Switch to monorepo. Include atomic-data-browser in this repo #216
  • Add Tables (edit, keyboard support, sorting, more) #638
  • The parent query param in /search has changed to parents and accepts an array of Subjects #677
  • Improve query performance, less index storage #678

Atomic Browser

  • Add table editor #639. Add resource instances using table columns, add properties as rows, paste and copy (HTML tables, e.g. excel), keyboard support, sorting.
  • Add ontology editor #648. Easily create classes, properties and visualize their relationships.
  • Show resource usage (incoming links) in data view.
  • New resource selector that uses searchbox #677
  • Sidebar redesign
  • Switch to current drive button #681

@tomic/lib

  • Add support for typed resources through resource.props, powered by @tomic/cli (see below)
  • When saving a resource whose parent has not yet been saved we now add them to a batch that gets saved later when the parent is saved.
  • The scope option in SearchOpts has changed to parents and now accepts an array of subjects instead of a single subject.
  • BREAKING: Removed getCommitBuilder() method from Resource
  • Added hasUnsavedChanges() method to Resource
  • Fix bugs in state management: proxy resources instead of clone (for react) #682 #675 #657

@tomic/cli

  • NEW
  • Generate typescript files from ontologies #665

v0.34.5

27 Jun 13:02
Compare
Choose a tag to compare
  • Remove tpf queries from atomic-cli #610
  • Fix pageSize property in Collections not using persistence
  • Add Table Ontology #25
  • Fix Post endpoints not including search params in returned @id field.
  • Rebuilding indexes done on separate thread, only once #616 #615
  • Don't require building index for populate commands
  • Refactor for_agent arguments to use the new ForAgent enum #623
  • Add support for Bearer token authentication, find in /app/token #632
  • Add a query endpoint that allows performing collection queries via an endpoint instead of repurposing the collections collection.
  • resource.destroy now recursively destroys its children.
  • Update JS assets, add History view

v0.34.2

04 Mar 10:29
Compare
Choose a tag to compare
  • Requires --rebuild-index
  • Improve full-text search, use JSON fields #335
  • Rename setup-env to generate-dotenv and build it from clap #599
  • Remove remove_previous_search and asset_url options
  • Parse multiple auth cookies #525
  • Fix --script flag
  • Add Storelike::post_resource, which allows plugins to parse HTTP POST requests #592
  • Move Server-Timing header to crate simple-server-timing-header
  • Add POST + body support for Endpoints #592
  • Refactor Endpoint handlers, uses a Context now #592
  • Re-build store + invite when adjusting server url #607
  • Use local atomic-server for properties and classes, improves atomic-server #604

v0.34.1

11 Feb 21:44
Compare
Choose a tag to compare
  • Improve query performance, refactor indexes. The .tpf API is deprecated in favor of the more powerful .query. #529
  • Replace acme_lib with instant-acme, drop OpenSSL dependency, add DNS verification for TLS option with --https-dns #192
  • Improved error handling for HTTPS initialization #530
  • Add --force to atomic-server import #536
  • Fix index issue happening when deleting a single property in a sorted collection #545
  • Update JS assets & playwright
  • Fix initial indexing bug #560
  • Fix errors on succesful export / import #565
  • Fix envs for store path, change ATOMIC_STORE_DIR to ATOMIC_DATA_DIR #567
  • Refactor static file asset hosting #578
  • Meta tags server side #577
  • Include JSON-AD in initial response, speed up first render #511
  • Remove feature to index external RDF files and search them #579
  • Add staging environment #588
  • Add systemd instructions to readme #271

NOTE: The crate for atomic-server isn't updated yet, as we're waiting for a PR downstream

v0.34.0

31 Oct 10:46
Compare
Choose a tag to compare
  • Add parent parameter to search endpoint which scopes a search to only the descendants of the given resource. #226
  • Bookmark endpoint now also retrieves og:image and og:description #510
  • Give server agent rights to edit all resources, fix issue with accepting invites in private drives #521
  • Add cookie based authentication #512
  • Store::all_resources returns Iterator instead of Vec #522 #487
  • Change authentication order #525
  • Fix cookie subject check #525

Changes from atomic-data-browser:

  • Add folders with list & grid views, allow drag & drop uploads #228
  • Show icons in sidebar
  • Add scoped search, funded by NGI NLnet Discovery #245 #254
  • Make web app installable #30
  • Add cookie based authentication #241
  • Get rid of useWindowSize #256
  • canWrite check should succeed for publicAgent #252
  • Improve error look & text