Arches 7.4.2 release notes
------------------------

### Bug Fixes and Enhancements

- Prevent adding nodes or branches to published graphs #9871 
- Fix TypeError when creating new collection in RDM #9885 
- Prevent creation of empty tiles in single csv loader #9873 
- Fix incorrect language labels on concept select widgets #9849 
- Add missing space to row count footer in single csv importer #9913  
- Clean empty strings to None (to enforce field validation) #9895 
- Filter out unpublished graphs in resource instance widget #9906 
- Fix wrap of iiif gallery filter #9891 
- Add mgmt command for validating an Arches database #9853 
- Fix race condition when saving cards in graph designer #9926 
- Fix search on uppercase concept labels #9927 
- Enforce datatype immutability #9956 
- Prevent notifications circle from rendering above expandable content #9910 
- Fix bug where not supplying a graphid or slug to the json-ld api would delete the resource but not save the new one #9969 
- Improve reliability of url for resource report #9977 
- Prevent languages without values from being added to the graph #10033
- Fix canvas delete function in image service manager #10054
- Fix select2 disable state #10003
- Remove duplicate in report #10082
- Update deprecated nodejs install in ubuntu install script #10010
- Fix email on search export with Celery #10095
- Fix search export notifications, re #10084
- Upgrade Django to latest patch release

### Dependency changes:
```
Python:
    Upgraded:
        Django 3.2.20 > 3.2.21
```

### Upgrading Arches

1. Upgrade to version 7.4.0 before proceeding. If upgrading from an earlier version, refer to the upgrade process in the [Version 7.4.0 release notes](https://github.com/archesproject/arches/blob/dev/7.4.x/releases/7.4.0.md)

2. Upgrade to Arches 7.4.2
    ```
    pip install --upgrade arches==7.4.2
    ```

3. Update the JavaScript dependencies and devDependencies:
    In the project's `package.json` file change arches from `stable/7.4.1` to `stable/7.4.2`:
    ```    
        "dependencies": {
            "arches": "archesproject/arches#stable/7.4.2",
        },
        "devDependencies": {
            "arches-dev-dependencies": "archesproject/arches-dev-dependencies#stable/7.4.2"
        }
    ```
    If upgrading from 7.4.0 (if upgrading from 7.4.1 you can skip this) - in your terminal navigate to the directory with your project's package.json file. Then run:

        yarn install


4. Start your application server in a separate terminal if it's not already running. Your webpack build will not complete without your application server running.

5. In a different terminal navigate to the directory with your project's package.json file, run `yarn start` or `yarn build_development`. This will generate your `media/build` directory.
   - If running your project in development:
     -  `yarn start` will build the frontend of the application and then start a webpack development server
      - `yarn build_development` will build a development bundle for the frontend assests of the application -- this should complete in less than 2 minutes
    - If running your project in production:
      - `yarn build_production` This builds a production bundle. **takes up to 2hrs depending on resources**
      - Alternatively you can `cd ..` up a directory and run `python manage.py build_production`. This will create a production bundle of frontend assessts and also call `collectstatic`.
  

6. If you are running Arches on Apache, be sure to run:

    ```
    collectstatic
    ```
    and restart your server:
    ```
    sudo service apache2 reload
    ```

